반응형
버블 정렬(Bubble Sort)은 이웃한 데이터들을 비교하여 가장 큰 데이터를 가장 뒤로 보내며 정렬하는 방식이다.
#include<stdio.h>
int main(void){
int nums[] = {50, 100, 10, 20, 90, 40, 70, 80, 30};
int tmp;
int size = sizeof(nums) / sizeof(nums[0]);
for(int i = size - 1; i > 0; --i){
for(int j = 0; j < i; ++j){
if(nums[j] > nums[j + 1]){ // 큰 수를 찾으면 바로 뒤의 index와 바꾼다.
tmp = nums[j];
nums[j] = nums[j + 1];
nums[j + 1] = tmp;
}
}
for(int j = 0; j < size; ++j){
printf("%d ", nums[j]);
}
printf("\n");
}
printf("결과 : ");
for(int i = 0; i < size; ++i)
printf("%d%c", nums[i], (i < size - 1) ? ' ' : '\n');
return 0;
}
반응형
'C' 카테고리의 다른 글
[C언어] 계승 (Factorial) (0) | 2021.07.06 |
---|---|
[C언어] 배열(Array)과 포인터(Pointer) 2 (0) | 2021.07.05 |
[C언어] 선택 정렬 (Selection Sort) (0) | 2021.06.30 |
[C언어] 실습: 배열에서 같은 값 찾기 (0) | 2021.06.28 |
[C언어] 실습: 홀수/짝수 숫자 판단하기 (if문) (0) | 2021.06.27 |