본문 바로가기

계수정렬

(2)
[이것이 코딩테스트다] 이진 탐색 알고리즘에서 매우매우 중요한!! 출제빈도가 아주아주 높은!! 이진탐색을 다뤄보도록 하겠습니다. 변수의 범위가 매우 넓을 경우 일단 무조건 생각해야하는게 바로 이진 탐색이죠! 지금부터 다뤄보도록 하겠습니다. 해당 내용은 '이것이 코딩테스트다'를 정리한 내용입니다. 1. 이진 탐색 이진 탐색 : 시작점, 끝점, 중간점으로 이루어진 알고리즘으로 찾으려는 데이터와 중간점 위치에 있는 데이터를 반복적으로 비교하여 원하는 데이터를 찾는 탐색 과정 이진 탐색은 중간점과 비교하려는 target과의 대소를 비교하여 start, end를 수정해 나가는 과정이다. 시간복잡도 이진 탐색 알고리즘의 시간 복잡도는 O(㏒N)이다. 이는 직관적으로 이해가 가능한데, 이진탐색 알고리즘은 한 단계를 거칠 때마다 확인하는 원소가 평균적..
[이것이 코딩테스트다] 정렬-개념 어느덧 벌써 챕터9 정렬까지 오게 되었습니다. 얼른 개념을 마무리하고 코딩테스트를 위해 실전 문제들을 풀어봐야하는데... 부지런히 달려보겠습니다!! 1. 선택 정렬 선택 정렬 : 항상 가장 작은 것을 선택하는 알고리즘 알고리즘 동작 방법 1. 가장 작은 원소를 찾아 리스트의 첫번째 원소와 변경 2. 이미 정렬된 원소를 제외한 리스트에서 가장 작은 원소를 선택해 리스트의 두번째 원소와 변경 3. 이러한 과정을 반복 수행 구현 코드 array = [5,1,3,7,2,9] for i in range(len(array)): min_index = i for j in range(i+1, len(array)): if array[min_index] > array[j]: min_index = j array[i], arr..

728x90
반응형