일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 컴퓨터구조
- 코딩테스트
- 데이터입출력구현
- 중학수학
- 데이터베이스
- 정수와유리수
- 컴퓨터비전
- 연습문제
- CNN
- 중학1-1
- 정보처리기사실기
- 자바
- html/css
- JSP/Servlet
- pandas
- 자바 실습
- 운영체제
- 텍스트마이닝
- 영어공부
- 데이터분석
- numpy/pandas
- C++
- 파이썬
- 파이썬라이브러리
- 딥러닝
- CSS
- SQL
- 정보처리기사필기
- 머신러닝
- 혼공머신
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
데이터 입출력 구현 13 - Session 55 : 정렬 본문
어제는 제목만 써놓고 공부는 아직 하지 않았었다. 새벽에 2시간 이진트리에 대해서 공부했고, 이어서 정렬에 대해서 학습해본다. 강의 분량이 40분이나 되어서 무척 많지만 차근차근 공부해볼 것이다.
세션 55 - 정렬
데이터의 개수에 따라 회전 수가 올라간다. 10개라면 10회전을 해주면 된다.
맨 앞의 것과 비교해 작은면 그것만 옮기면 된다. 다른 것은 이미 정렬이 완료된 상태니 비교할 필요가 없다. 문제를 풀 때는 회전 수를 반드시 써주어야 한다.
가장 작은 값이 맨 앞에 온다. 1회전 했을 때는 첫번째로 작은 값이 첫번째 위치에, 2회전 했을 때는 두번째로 작은 값이 두번째 위치에 오게 된다.
버블 정렬은 1회전을 하면 가장 큰 값이 뒤로 가게 되고, 두 번째로 큰 값이 마지막에서 두번째 위치에 간다. 두번째로 큰 값이 이 위치에 있기 때문에 마지막 데이터와는 비교하지 않아도 된다. 3회전 할 때는 네번째 데이터와 비교할 필요가 없다.
십단위 숫자끼리 묶는 식으로 정렬한다. 십의 자리가 1인 것부터 차례대로 큐를 거치게 된다.
정렬 실습해보기
기출문제 풀어보기
4번은 잘 모르겠다. 답은 퀵 정렬이었다. 실습을 진행하는데 초점을 맞추느라 내용 암기는 잘 하지 못했다. 퀵 정렬은 키를 기준으로 작은 값은 왼쪽, 큰 값은 오른쪽 서브 파일에 분해시키는 과정을 반복하는 정렬 방식이다.
열심히 공부한 보람이 있었다. 값을 구하는 모든 문제를 하나도 빠짐없이 다 맞추었다. 이제 확실히 이해한 것 같다.
학습을 마치고
오늘 새벽에 정말 많은 시간을 들여서 공부했다. 원래 목표는 오늘 새벽에 2장까지 모든 학습을 다 마치는 거였지만 택도 없었다. 이진트리와 정렬이 얼마나 어렵던지.. 어젯밤에 졸려서 일찍 취침하길 정말 잘했다는 생각이 들었다. 졸린 상태로는 도저히 이해할 수 없는 단원이었다.
그래도 모든 내용을 확실하게 알고 넘어갈 수 있어서 정말 기뻤다. 이것이 바로 공부의 매력이다. 하나를 이해하고 깨닫는 순간이 너무나도 기쁘고 황홀하기 때문이다.
이제 기출문제를 다시 한번 풀면서 두번째 틀린 문제를 정리해보려고 한다.
'자격증 공부 > 정보처리기사 실기' 카테고리의 다른 글
데이터 입출력 구현 15 - 기출문제 다시 풀기 2 : 세션 38~42 (0) | 2024.09.26 |
---|---|
데이터 입출력 구현 14 - 기출문제 다시 풀기 1 : 세션 29~37 (0) | 2024.09.26 |
데이터 입출력 구현 12 - Session 53~54 : 트리 및 이진트리 (0) | 2024.09.25 |
데이터 입출력 구현 11 - Session 51~52 : 논리 데이터 모델의 변환 및 자료 구조 (0) | 2024.09.25 |
데이터 입출력 구현 10 - Session 48~50 : 데이터베이스 보안 및 백업 그리고 스토리지 (0) | 2024.09.25 |