본문 바로가기

이코테11

정렬 이론 이것이 코딩테스트다에 있는 정렬은 다음과 같다. 선택정렬 삽입정렬 퀵정렬 계수정렬 1. 선택정렬 선택정렬은 가장 작은 값을 선택해 앞으로 보내는 과정을 반복하여 배열을 정렬해준다. 예를 들어 [3, 2, 5, 1, 4]라는 배열이 있다면, 이 배열에서 가장 작은 값인 1을 맨 앞의 3이랑 위치를 바꿔준다. [1, 2, 5, 3, 4]에서는 이미 정렬된 1을 제외한 [2, 5, 3, 4] 중 가장 작은 데이터인 2를 맨 앞으로 보낸다. (2가 이미 맨 앞의 숫자라 달라진 점은 없다.) 그 다음엔 [1, 2, 5, 3, 4]에서 이미 정렬된 1, 2를 제외한 [5, 3, 4] 중 가장 작은 데이터인 3을 맨 앞의 5랑 바꾼다. [1, 2, 3, 5, 4]에서 같은 방식으로 남은 5, 4의 위치를 바꿔주면 완.. 2023. 2. 13.
알고리즘을 배우는 이유 및 커리큘럼 알고리즘을 배우는 이유라고 썼지만 사실 알고리즘을 "다시" 배우는 이유이다. 사실 2022년 여름방학 두 달 동안 친구들과 스터디를 만들어 스터디 장으로서 활동하였고, 그 스터디를 하면서 알고리즘을 공부한 적이 있다. 그 때 하루에 2~8시간정도씩 꾸준히 알고리즘 공부를 했었던 걸로 기억한다. 그 정도로 알고리즘을 열심히 하였다. 그래서 재귀는 기본이고 다이나믹 프로그래밍, 그래프도 충분히 익혔다. 그리고 학기가 시작하면서 42서울한다고 바빴고, 학교 공부 따라간다고 바빠서 알고리즘에는 아예 손을 놨었다. 그리고 이번에 UOSPC라는 교내 알고리즘 대회에 출전하였고, 1, 2학년 40여명 중 6등을 하게 되었다. 상금도 받고 기분은 좋았지만 조금 아쉬운 성적이었다. 그렇지만 근래에 알고리즘을 전혀 공부하.. 2023. 1. 3.