티스토리 뷰

정렬

버블 정렬

따분한놈 2015. 10. 20. 18:40

아래는 버블 정렬을 보여주는 그림입니다.

버블 정렬은 그림과 같이 맨 처음 원소부터 인접한 원소를 비교하여 맨 끝 원소까지 비교를 하며 정렬을 하는 방법입니다.

그리고 그 모양이 물 속에서 물방울이 올라오는 모양같다고 하여 버블 정렬이라고 부릅니다. 

 

아래와 같이 인접한 원소끼리 비교하여 큰 원소이면 바꾸는 식으로 뒤로 뒤로 보내게 되는 데요.

그런식으로 하다본면 맨 마지막 원소엔 가장 큰 원소가 자리잡게 됩니다.

그런식으로 다시 첫 원소부터 다시 비교를 하여 정렬을 하게 됩니다.

가장 큰 것을 마지막에 넣는 식이다 보니, 이미 정렬이 된 원소들은 제외를 하면서 정렬을 합니다.

 

 

1
2
3
4
5
6
7
8
9
10
11
void BubbleSort( int *array, int num )
{
    forint i=0; i<num; i++ )
    {
        forint j=0; j<num-i-1; j++ )
        {
            if( array[j] > array[j+1] )
                swap( array[j], array[j+1] );
        }
    }
}
cs

 

'정렬' 카테고리의 다른 글

삽입 정렬  (0) 2015.10.22
선택 정렬  (0) 2015.10.20
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함