Insert_sort.md


κ°œλ…

λ§€ μˆœμ„œλ§ˆλ‹€ 이미 μ •λ ¬λœ λ°°μ—΄ λΆ€λΆ„μ—μ„œ ν•΄λ‹Ή μ›μ†Œλ₯Ό μ‚½μž…ν•  수 μžˆλŠ” μœ„μΉ˜λ₯Ό μ°Ύμ•„ ν•΄λ‹Ή μœ„μΉ˜μ— λ„£λŠ”λ‹€.

νŠΉμ§•

  • μ•ˆμ •λœ μ •λ ¬ 방법

  • λŒ€λΆ€λΆ„μ˜ λ ˆμ½”λ“œκ°€ 이미 μ •λ ¬λ˜μ–΄ μžˆλŠ” 경우 맀우 효율적

  • 비ꡐ적 λ§Žμ€ λ ˆμ½”λ“œλ“€μ˜ 이동을 포함

  • λ ˆμ½”λ“œ μˆ˜κ°€ 많고 λ ˆμ½”λ“œ 크기가 클 κ²½μš°μ— μ ν•©ν•˜μ§€ μ•Šλ‹€.

μ‹œκ°„ λ³΅μž‘λ„ O(n^2)

μ˜ˆμ‹œ

insertsort

κ΅¬ν˜„

# μ˜€λ¦„μ°¨μˆœ μ •λ ¬
def insert_sort(arr):
    for i in range(1, len(arr)):
        for j in range(i, 0, -1):
            if arr[j - 1] > arr[j]:
                arr[i - 1], arr[j] = arr[j], arr[j + 1]

Last updated