728x90
반응형

#정의: 나란히 있는 두개의 데이터를 계속 비교하여 교환하는 정렬하는 알고리즘

#정렬과정

- 1단계: list[i]와 list[i+1]를 i = 0,1,2, ···, n-2에 대하여 비교하여 만약 뒤 데이터가 값이 더 작으면 바꾼다

- 2단계: list[i]와 list[i+1]를 i = 0,1,2, ···, n-3에 대하여 비교하여 만약 뒤 데이터가 값이 더 작으면 바꾼다

- n-1단계: list[i]와 list[i+1]를 i = 0에 대하여 비교하여 만약 뒤 데이터가 값이 더 작으면 바꾼다

>> 이과정을 거치면 n-1 번째 큰 값이 뒤에서 n-1번째 위치하게 됨

 

/* list에 대한 기본 버블정렬 알고리즘 */

void bubble_sort(element list[], int n) {

     int i, j;

     element next;

     for(i = n-1; i > 0; i--) {   

       for(j = 0; j < i; j++) {   

          if(list[j] > list[j + 1] { 

             swap(list[j], list[j + 1]);

          }

      }

    }

}

 

 

 

 

 

 

 

 

 

https://www.youtube.com/embed/lyZQPjUT5B4

 

Bubble-sort with Hungarian ("Csángó") folk dance - YouTube

 

www.youtube.com

 

 

728x90

'08.Algorithm' 카테고리의 다른 글

이더리움 - 블룸 필터(Bloom filter)  (0) 2020.06.01
함수형 언어  (0) 2020.06.01
스택 (Stack)  (0) 2020.06.01
알고리즘 평가  (0) 2020.06.01
Min-Max 알고리즘  (0) 2020.06.01
Posted by Mr. Slumber
,