728x90
반응형
# 오늘의 문제
삽입 정렬 연습
# 나의 코드
삽입 정렬 연습
삽입정렬 : 배열의 모든 요소를 앞에서부터 정렬된 배열 부분과 비교한 후 자신이 들어가야할 정렬 위치를 찾아 삽입함으로 정렬이 되도록 하는 알고리즘을 말한다.
array = [7,5,9,0,3,1,6,2,4,8]
for i in range(1, len(array)):
for j in range( i , 0 , -1):
if array[j] < array[j-1]:
array[j-1],array[j] = array[j],array[j-1]
print(array)
# 첫번째 배열은 정렬되어 있다고 가정하고 for 문을 돈다.
# 두번째 루프에서는 i번 ~ 0 번 까지 -1씩 (큰수에서 작은수로) 돈다.
# 배열의 j번째보다 배열의 j-1번째가 크다면 서로의 위치를 바꾸며 2번째 포문을 쭉 돌아
# 한번의 삽입을 완료한다
# **두번째 루프문이 완료되고 i가 커질때마다 한번의 삽입이 완료되는 셈.**
728x90
'프로그래밍 회고록 > Python' 카테고리의 다른 글
2021.12.08 코테_위에서 아래로 (0) | 2021.12.08 |
---|---|
2021.12.08 코테_퀵 정렬 연습 (0) | 2021.12.08 |
2021.11.22 코테_선택 정렬 연습 (0) | 2021.11.22 |
2021.11.14 코테_음료수 얼려 먹기 (0) | 2021.11.14 |
2021.11.13 코테_BFS 예시코드 (0) | 2021.11.13 |