1. ๋ฒ๋ธ์ ๋ ฌ(bubble sort) ์๊ณ ๋ฆฌ์ฆ
- ์๋ก ์ธ์ ํ ๋ ์์๋ฅผ ๋น๊ตํ์ฌ ๋ ์์ ๊ฐ์ ์์ผ๋ก ๋ณด๋ด์ด ์ ํ๋ ์๊ณ ๋ฆฌ์ฆ
- ์ธ์ ํ 2๊ฐ์ ๋ ์ฝ๋๋ฅผ ๋น๊ตํ์ฌ ํฌ๊ธฐ๊ฐ ์์๋๋ก ๋์ด์์ง ์์ผ๋ฉด ์๋ก ๊ตํ
- ์ ํ ์ ๋ ฌ๊ณผ ๊ธฐ๋ณธ ๊ฐ๋
์ด ์ ์ฌ
โ ๋ฒ๋ธ์ ๋ ฌ : ์์๋ฅผ ๊ตํ ์ ๋ ฌ / ์์ ์ ์๊ณ ๋ฆฌ์ฆ / ์๋๋๋ฆผ / ๊ฐ๋จํ๊ณ ๋นํจ์จ์
โ ์ ํ์ ๋ ฌ : ์์๋ฅผ ์ ํํ์ฌ ์ ๋ ฌ / ๋ถ์์ ํ ์๊ณ ๋ฆฌ์ฆ / ๋ฒ๋ธ์ ๋ ฌ์ ๋นํด ๋น ๋ฆ / ํจ์จ์
โป ์๊ณ ๋ฆฌ์ฆ์ ๋ชฉ๋ก์ด๋ ๋ฐฐ์ด์์ ์ ๋ ฌ ์ ๋ฐ์ํ๋ ๋์ผํ ์์๋ก ๋์ผํ ํค๊ฐ ์๋ ์์๊ฐ ์์ ์ ์ด๋ผ ๊ฐ์ฃผ
2. ๋ฒ๋ธ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ๊ตฌํ

์ฒซ ๋ฒ์งธ ์๋ฃ์ ๋ ๋ฒ์งธ ์๋ฃ๋ฅผ, ๋ ๋ฒ์งธ ์๋ฃ์ ์ธ ๋ฒ์งธ ์๋ฃ๋ฅผ, ์ธ ๋ฒ์งธ์ ๋ค ๋ฒ์งธ๋ฅผ ๋น๊ต โฆ
์ด๋ฐ ์์ผ๋ก (๋ง์ง๋ง-1)๋ฒ์งธ ์๋ฃ์ ๋ง์ง๋ง ์๋ฃ๋ฅผ ๋น๊ตํ์ฌ ๊ตํํ๋ฉด์ ์๋ฃ๋ฅผ ์ ๋ ฌ.
#include <stdio.h>
#include <stdlib.h>
int main() {
int i, j, temp;
int arr[10] = { 1, 9, 4, 6, 11, 10, 3, 15, 2, 13 };
for (i = 0; i < 10; i++) {
for (j = 0; j < 9 - i; j++) {
if (arr[j] > arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
for (i = 0; i < 10; i++)
printf("%d ", arr[i]);
return 0;
}
3. ๋ฒ๋ธ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ์ ํน์ง
3-1. ์ฅ์
- ๊ตฌํ์ด ๊ฐ๋จํ๋ค.
3-2. ๋จ์
- ํ๋์ ์์๊ฐ ๊ฐ์ฅ ์ผ์ชฝ์์ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ์ผ๋ก ์ด๋ํ๊ธฐ ์ํด์๋ ๋ฐฐ์ด์์ ๋ชจ๋ ๋ค๋ฅธ ์์๋ค๊ณผ ๊ตํ๋์ด์ผ ํ๋ค.
- ์ฐ์ฐ ์๊ฐ ๊ฐ์ฅ ๋ง์ ์๊ณ ๋ฆฌ์ฆ ์ค์์ ์๋์ ์ผ๋ก ๊ฐ์ฅ ๋๋ฆฌ๊ณ ํจ์จ์ฑ์ด ๋จ์ด์ง๋ ์ ๋ ฌ๋ฐฉ์.
โ ์ผ๋ฐ์ ์ผ๋ก ์๋ฃ์ ๊ตํ์์
(SWAP)์ด ์๋ฃ์ ์ด๋์์
(MOVE)๋ณด๋ค ๋ ๋ณต์กํ๊ธฐ ๋๋ฌธ์
๋ฒ๋ธ์ ๋ ฌ์ ๋จ์์ฑ์๋ ๋ถ๊ตฌํ๊ณ ๊ฑฐ์ ์ฐ์ด์ง ์์
์ฐธ๊ณ ) https://gmlwjd9405.github.io/2018/05/06/algorithm-bubble-sort.html
[์๊ณ ๋ฆฌ์ฆ] ๋ฒ๋ธ ์ ๋ ฌ(bubble sort)์ด๋ - Heee's Development Blog
Step by step goes a long way.
gmlwjd9405.github.io
์ฐธ๊ณ ) https://ko.gadget-info.com/difference-between-bubble-sort
๋ฒ๋ธ ์ ๋ ฌ๊ณผ ์ ํ ์ ๋ ฌ์ ์ฐจ์ด์
๋ฒ๋ธ ์ ๋ ฌ๊ณผ ์ ํ ์ ๋ ฌ์ ์ฃผ์ ์ฐจ์ด์ ์ ๋ฒ๋ธ ์ ๋ ฌ์ ๋ณธ์ง์ ์ผ๋ก ์์๋ฅผ ๊ตํํ์ง๋ง ์ ํ ์ ๋ ฌ์ ์์๋ฅผ ์ ํํ์ฌ ์ ๋ ฌ์ ์ํํ๋ค๋ ๊ฒ์ ๋๋ค.
ko.gadget-info.com
'CS > ์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์๊ณ ๋ฆฌ์ฆ] ์์ด๊ณผ ์กฐํฉ (0) | 2023.01.16 |
---|---|
[์๊ณ ๋ฆฌ์ฆ] ํฌํฌ์ธํฐ (0) | 2023.01.16 |
[์๊ณ ๋ฆฌ์ฆ] #5. ํต์ ๋ ฌ (0) | 2023.01.15 |
[์๊ณ ๋ฆฌ์ฆ] #4. ์ฝ์ ์ ๋ ฌ (0) | 2023.01.15 |
[์๊ณ ๋ฆฌ์ฆ] #3. ์ ํ์ ๋ ฌ (0) | 2023.01.15 |