[C언어] 정렬 알고리즘 코드
정렬 코드1(Better)
cnt는 실행 횟수를 비교하기 위한 변수입니다.
#include <stdio.h>
#define N 10
int main() {
int arr[10] = {1,10,9,2,3,5,8,7,6,4};
int tmp, cnt=0;
for(int i=1; i<N; i++) {
for(int j=i; j>0; j--) {
cnt++;
if(arr[j-1]>arr[j]) {
tmp = arr[j];
arr[j] = arr[j-1];
arr[j-1] = tmp;
}
else break;
}
}
for(int i =0; i<N; i++) {
printf("%d |%d\n", arr[i], cnt);
}
}
정렬코드2
cnt는 실행 횟수를 비교하기 위한 변수입니다.
#include <stdio.h>
#define N 10
int main() {
int arr[10] = {1,10,9,2,3,5,8,7,6,4};
int tmp, cnt=0;
for(int i=1; i<N; i++) {
for(int j=0; j<i; j++) {
cnt++;
if(arr[j]<arr[i]) {
tmp = arr[j];
arr[j] = arr[i];
arr[i] = tmp;
}
}
}
for(int i =0; i<N; i++) {
printf("%d |%d", arr[i], cnt);
}
}