ํ‹ฐ์Šคํ† ๋ฆฌ ๋ทฐ

๋ฐ˜์‘ํ˜•
์˜†์— ์žˆ๋Š” ๊ฐ’๊ณผ ๋น„๊ตํ•ด์„œ ๋” ์ž‘์€ ๊ฐ’์„ ์•ž์œผ๋กœ ๋ณด๋‚ธ๋‹ค.

๋ฒ„๋ธ”์ •๋ ฌ์€ ๊ตฌํ˜„์€ ์‰ฝ์ง€๋งŒ ํšจ์œจ์„ฑ์ด ๊ฐ€์žฅ ๋–จ์–ด์ง€๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค

 

 

 

 

ํŒŒ์ด์ฌ ์ฝ”๋“œ
# ๋ฒ„๋ธ”์ •๋ ฌ (Bubble Sort)

def bubble_sort(arr):
    
    # for๋ฌธ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋งŒํผ ๋ฐ˜๋ณต 0๋ถ€ํ„ฐ len(arr)๋ฏธ๋งŒ๊นŒ์ง€
    for i in range(len(arr)):
        
        for j in range(0, len(arr)-1-i):
        
            if arr[j] > arr[j+1]:
                # ๋‘๊ฐœ์˜ ๊ฐ’ ๋ฐ”๊พธ๊ธฐ
                temp = arr[j]
                arr[j] = arr[j+1]
                arr[j+1] = temp
    
    return arr
                
    
test = [1, 10, 5, 8, 7, 6, 4, 3, 2, 9]
print("์„ ํƒ ์ •๋ ฌ๋œ ๋ฐ์ดํ„ฐ : {}".format(bubble_sort(test)))

 

 

 

 

์‹œ๊ฐ„๋ณต์žก๋„

O(N * N)

 

์‹ค์ œ๋กœ ์ž‘๋™์‹œํ‚ค๋ฉด ์„ ํƒ์ •๋ ฌ๋ณด๋‹ค ๋ฒ„๋ธ”์ •๋ ฌ์ด ๋” ๋Š๋ฆฌ๋‹ค

๋ฒ„๋ธ”์ •๋ ฌ๊ฐ™์€๊ฒฝ์šฐ๋Š” ๋‹น์žฅ ์˜†์—์žˆ๋Š”๊ฒƒ๊ณผ ๋น„๊ตํ•ด์„œ ์ž๋ฆฌ๋ฅผ ๋ฐ”๊พธ๋Š” ์—ฐ์‚ฐ์„ ์‹คํ–‰ํ•œ๋‹ค. ๋งค๋ฒˆ ๊ต์ฒด๋ฅผ ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์ œ ์ˆ˜ํ–‰์‹œ๊ฐ„์€ ๋” ๊ฑธ๋ฆฌ๊ฒŒ ๋œ๋‹ค.

๋ฐ˜์‘ํ˜•
๋Œ“๊ธ€