버블정렬
이웃하는 원소(index)의 값을 비교하여, 더 큰 값을 뒤로 보내는 정렬이다.
배열의 뒷쪽부터 정렬하는 방법이라고 이해할 수 있다.
EX)
2,5,3,1,7 [기본 배열]
2,5,3,1,7 [j=1, j-1=0]
2,3,5,1,7 [j=2, j-1=1, 교환]
2,3,1,5,7 [j=3, j-1=2, 교환]
2,3,1,5,7 [j=4, j-1=3]
.
.
.
#include <stdio.h>
#include <stdlib.h>
int main(){
int arr[4]= {2,4,5,1}
int temp;
for (int i=0; i<4; i++){
for(int j=0; j<3-i; j++){
if(arr[j]> arr[j+1]{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] temp;
}
}
}
for (int i=0; i<4; i++)
printf("%d", arr[i]);
return 0;
}
728x90
반응형
'Programming > C' 카테고리의 다른 글
[Algorithm] 삽입정렬 (0) | 2023.02.15 |
---|---|
[Algorithm] 선택정렬 (0) | 2023.01.31 |
댓글