C언어 기준으로 크기 5의 배열이 있고

int data[5] = {0,5,1,2,3}


0 1 비교 -> {5,0,1,2,3}

1 2 비교 -> {5,1,0,2,3}

2 3 비교 -> {5,1,2,0,3}

3 4 비교 -> {5,1,2,3,0}


0 1 비교 -> {5,1,2,3,0}

1 2 비교 -> {5,2,1,3,0}

2 3 비교 -> {5,2,3,1,0}

 . . .

이게 버블 정렬이잖아.

바로 옆에 원소랑 비교하는거



그럼 이건 뭐임?

int data[5] = {0,5,1,2,3}


0 1 비교 -> {5,0,1,2,3}

0 2 비교 -> {5,0,1,2,3}

0 3 비교 -> {5,0,1,2,3}

0 4 비교 -> {5,0,1,2,3}


1 2 비교 -> {5,1,0,2,3}

1 3 비교 -> {5,2,0,1,3}

1 4 비교 -> {5,3,0,1,2}


2 3 비교 -> {5,3,1,0,2}

2 4 비교 -> {5,3,2,0,1}


난 후자가 존나 간단하길래 당연히 이게 버블 정렬인줄 알고 쓰고 있었는데 아니네