알고리즘 : 선택정렬(selection sort)
선택 정렬(selection sort)은? 1. 주어진 데이터 중, 최소값을 찾음 2. 해당 최소값을 데이터 맨 앞에 위치한 값과 교체함 3. 맨 앞의 위치를 뺀 나머지 데이터를 동일한 방법으로 반복함 코드로 만들려면? 1. 데이터 두 개의 경우 data_list = [8, 2] data_list[0] > data_list[1] 이므로 data_list[0]값과 data_list[1] 값을 교환 2. 데이터 세 개의 경우 data_list = [8, 2, 6] 처음 한 번 실행하면 2, 8, 6이 됨 두 번째 실행하면 2, 6, 8이 됨 3. 데이터 네 개의 경우 data_list = [8, 4, 3, 2] 처음 한 번 실행하면 2, 4, 3, 8이 됨 두 번째 실행하면 2, 3, 4, 8 됨 세 번째 ..
2021. 8. 24.
알고리즘 : 삽입 정렬(insertion sort)
삽입 정렬(insertion sort)은? 두 번째 인덱스부터 시작함 해당 인덱스(key값) 앞에 있는 데이터(B)부터 비교해서 key 값이 더 작으면, B값을 뒤 인덱스로 복사함 key 값이 더 큰 데이터를 만날때까지 반복, 큰 데이터를 만난 위치 바로 뒤에 key 값을 이동함 for index in range(10, 1, -1) print(index) """ 출력결과 10 9 8 7 6 5 4 3 2 """ 데이터가 4개 일 때 동작 data_list = [8, 4, 3, 5] 처음 한 번 실행하면, key값은 8, 인덱스(0) -1은 0보다 작음, 끝 : [8, 4, 3, 5] 두 번째 실행하면, key값은 4, 8보다 4가 작음 자리바꿈, 끝 : [4, 8, 3, 5] 세 번째 실행하면, key값..
2021. 8. 23.