๊ฐœ๋ฐœ์ž HOON
๐Ÿ› HOON DEVLog
๊ฐœ๋ฐœ์ž HOON
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๐Ÿ˜Ž ์ „์ฒด ์นดํ…Œ๊ณ ๋ฆฌ (137)
    • ๐Ÿ“ ์‹ ์ž… ์ธํ„ฐ๋ทฐ ์ค€๋น„ (7)
    • ๐Ÿฆ” ์ทจ์—…์ค€๋น„ ๊ธฐ๋ก (7)
    • โ˜• ์ž๋ฐ” : JAVA (5)
    • ๐Ÿ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋Œ€๋น„ : PS (80)
    • ๐ŸŒฑ ๋ฐฑ์—”๋“œ : Backend (13)
    • ๐Ÿงช ์ปดํ“จํ„ฐ๊ณผํ•™ : CS (11)
    • ๐Ÿ—‚ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค : DB (1)
    • ๐Ÿƒ‍โ™‚๏ธ DEVLOG (8)
    • โš™๏ธ Trouble Shooting (5)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • GitHub
  • Resume

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
๊ฐœ๋ฐœ์ž HOON

๐Ÿ› HOON DEVLog

[Algorithm] ๋ฒ„๋ธ” ์ •๋ ฌ (Bubble Sort)
๐Ÿงช ์ปดํ“จํ„ฐ๊ณผํ•™ : CS

[Algorithm] ๋ฒ„๋ธ” ์ •๋ ฌ (Bubble Sort)

2022. 9. 3. 14:09

๋ฒ„๋ธ” ์ •๋ ฌ (Bubble Sort)

 

๋ฒ„๋ธ” ์ •๋ ฌ์€, ์ด์›ƒํ•œ ๋‘ ์ˆซ์ž๋ฅผ ๊ณ„์†ํ•ด์„œ ๋น„๊ตํ•˜๋ฉฐ ์ •ํ•ด์ง„ ๊ทœ์น™์— ๋”ฐ๋ผ ์ž๋ฆฌ๋ฅผ ์Šค์œ„์นญํ•˜๋Š” ์ •๋ ฌ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์˜ค๋ฆ„์ฐจ์ˆœ์ด๋ผ๋ฉด ์ด์›ƒํ•œ ๋‘ ์ˆซ์ž ์ค‘ ๋” ํฐ ์ˆซ์ž๊ฐ€ ๋’ท ์ž๋ฆฌ๋กœ ์ด๋™ํ•˜๋„๋ก ์„œ๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋ฒ„๋ธ” ์ •๋ ฌ์ด๋ผ๋Š” ์ด๋ฆ„์ด ๋ถ™์€ ์ด์œ ๋Š” ๊ฐ€์žฅ ๊ฐ€๋ฒผ์šด ๊ฒƒ์ด ์œ„๋กœ ์˜ฌ๋ผ๊ฐ€๋Š” ๊ฑฐํ’ˆ์˜ ์›€์ง์ž„์— ๋น—๋Œ€์–ด ๋ถ™์—ฌ์ง„ ์ด๋ฆ„์ด๋ผ ํ•œ๋‹ค. (๊ทธ๋ ‡๊ฒŒ ๊ณต๊ฐ์ด ๊ฐ€์ง„ ์•Š๋Š”๋‹ค)

 

๋ฒ„๋ธ” ์†ŒํŠธ (์ถœ์ฒ˜ : https://wonjayk.tistory.com/)

 

์œ„ ๊ทธ๋ฆผ์€ ๋ฒ„๋ธ” ์ •๋ ฌ์˜ switching ํ•˜๋Š” ๊ณผ์ •์„ ๋ณด์—ฌ์ฃผ๋Š” ๊ทธ๋ฆผ์ด๋‹ค.

์—ฐ์†๋œ ๋‘ ์ด์›ƒ์˜ ๊ฐ’์„ ๋น„๊ตํ•ด ๋” ๋†’์€ ๊ฐ’์„ ๋’ท์ž๋ฆฌ๋กœ ์Šค์œ„์นญํ•˜๊ฒŒ ๋œ๋‹ค.

ํŠน์ง•์€, ํ•œ loop๊ฐ€ ๋Œ ๋•Œ๋งˆ๋‹ค, ์ œ์ผ ๋งˆ์ง€๋ง‰ ์ž๋ฆฌ์˜ ์ˆซ์ž๊ฐ€ ๊ฒฐ์ •๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

๋‹ค์Œ loop๋Š” n-1๋ฒˆ์งธ ์ž๋ฆฌ์˜ ์ˆซ์ž๊ฐ€, ๊ทธ ๋‹ค์Œ์€ n-2๋ฒˆ์งธ ์ž๋ฆฌ์˜ ์ˆซ์ž๊ฐ€ ๊ฒฐ์ •๋œ๋‹ค๋Š” ํŠน์ง•์„ ์•Œ๊ฒŒ ๋œ๋‹ค๋ฉด, ์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋ชจ๋“  ์ž๋ฆฌ์˜ ์ˆซ์ž๋ฅผ ๊ฒฐ์ •ํ•ด์•ผ ํ•˜๊ณ  (O(n)), n๋ฒˆ์งธ ์ž๋ฆฌ์˜ ์ˆซ์ž๋ฅผ ๊ฒฐ์ •ํ•  ๋•Œ ๋งˆ๋‹ค n-1๋ฒˆ์˜ ๋น„๊ต๊ฐ€ ์ด๋ค„์ง„๋‹ค. (O(n))

๋”ฐ๋ผ์„œ ๋ฒ„๋ธ” ์ •๋ ฌ์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” O(n^2)์— ํ•ด๋‹นํ•œ๋‹ค.

 

 

๋ฒ„๋ธ” ์ •๋ ฌ ํŒŒ์ด์ฌ ์ฝ”๋“œ

 

๋ฒ„๋ธ” ์ •๋ ฌ ์ž๋ฐ” ์ฝ”๋“œ

 

 

๋ฒ„๋ธ” ์ •๋ ฌ ์žฅ๋‹จ์ 

- ๋ฒ„๋ธ” ์ •๋ ฌ์˜ ์žฅ์ 

๊ตฌํ˜„์ด ๊ฐ„๋‹จํ•˜๋ฏ€๋กœ, ๊ฐœ๋ฐœ์— ๋“œ๋Š” ์‹œ๊ฐ„์„ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค.

์ฝ”๋“œ๋งŒ ๋ณด๊ณ ๋„ ๋ˆ„๊ตฌ๋‚˜ ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ์ง๊ด€์ ์ธ ์ฝ”๋“œ์ด๋‹ค. 

๊ณต๊ฐ„ ๋ณต์žก๋„๊ฐ€ O(N)์œผ๋กœ, ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์•„๋‚„ ์ˆ˜ ์žˆ๋‹ค.

 

- ๋ฒ„๋ธ” ์ •๋ ฌ์˜ ๋‹จ์ 

๋ฐ์ดํ„ฐ๋ฅผ ํ•˜๋‚˜์”ฉ ๋น„๊ตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„๊ตํšŸ์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๋ฏ€๋กœ, ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฐ๋‹ค.

 

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋™์ผ์กฐ๊ฑด (์ƒˆ์ฐฝ์—ด๋ฆผ)

'๐Ÿงช ์ปดํ“จํ„ฐ๊ณผํ•™ : CS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[์ž๋ฃŒ๊ตฌ์กฐ] Array์™€ LinkedList์˜ ์ฐจ์ด (์ธํ„ฐ๋ทฐ ๋Œ€๋น„)  (0) 2022.10.23
[๊ฐœ๋ฐœ๊ณตํ†ต] Call by value์™€ Call by reference (Java, Python, C/C++)  (0) 2022.10.11
[Algorithm] ํž™ ์ •๋ ฌ (Heap Sort)  (0) 2022.09.03
[Alogrithm] ์‚ฝ์ž… ์ •๋ ฌ (Injection Sort)  (0) 2022.09.03
[Algorithm] ์„ ํƒ ์ •๋ ฌ (Selection Sort)  (0) 2022.09.03
    '๐Ÿงช ์ปดํ“จํ„ฐ๊ณผํ•™ : CS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [๊ฐœ๋ฐœ๊ณตํ†ต] Call by value์™€ Call by reference (Java, Python, C/C++)
    • [Algorithm] ํž™ ์ •๋ ฌ (Heap Sort)
    • [Alogrithm] ์‚ฝ์ž… ์ •๋ ฌ (Injection Sort)
    • [Algorithm] ์„ ํƒ ์ •๋ ฌ (Selection Sort)
    ๊ฐœ๋ฐœ์ž HOON
    ๊ฐœ๋ฐœ์ž HOON
    ์ข‹์€ ๋ฐฑ์—”๋“œ ์—”์ง€๋‹ˆ์–ด๊ฐ€ ๋˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ก์„ ๋ชจ์•˜์Šต๋‹ˆ๋‹ค. # ์ฃผ๋‹ˆ์–ด # ๋ฐฑ์—”๋“œ # ๊ฐœ๋ฐœ์ž

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”