삽입 정렬
삽입정렬 처리되지 않은 데이터를 하나씩 골라 적절한 위치에 삽입 데이터를 하나씩 확인하면서, 이 데이터는 어느 위치에 들어가는게 맞을 지 매번 계산해서 적절한 위치에 들어갈 수 있도록 해줌 선택 정렬에 비해 구현 난이도가 높지만, 더 빠르게 동작 앞쪽에 있는 원소들이 이미 정렬되어있다고 가정하고, 뒤 쪽에 있는 원소를 앞 쪽에 있는 원소의 위치 중에서 한 곳으로 들어가도록 만드는 방식으로 동작 처음 시작 시, 첫 번째 원소는 그 자체로 정렬되어 있다고 판단하고 두 번째 데이터가 어떤 위치로 들어갈지 판단. 카드 게임을 할 때, 새로운 카드가 들어오면 새로운 카드를 기존 정렬된 카드 사이 올바른 자리를 찾아 삽입함으로써 정렬이 유지되도록 하는 것과 같음. array = [7,5,9,0,3,1,6,2,4,8..
2023. 12. 18.
선택 정렬
정렬(sorting) : 데이터를 특정한 기준에 따라 순서대로 나열하는 것 일반적으로 문제 상황에 따라 적절한 정렬 알고리즘이 공식처럼 사용된다. 선택 정렬 처리되지 않은 데이터 중에서 가장 작은 데이터를 선택해 맨 앞에 있는 데이터와 바꾸는 것을 반복 매번 가장 작은 것을 선택한다는 의미에서 '선택'정렬 알고리즘이라고 한다. array = [7,5,9,0,3,1,6,2,4,8] for i in range(len(array)): min_index = i # 가장 작은 원소의 인덱스. 맨 처음 시작은 0번째 인덱스로 for j in range(i+1, len(array)): # 처리되지 않은 데이터에서 if array[min_index] > array[j]: min_index = j array[i], ar..
2023. 12. 17.