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
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 |