주요 차이점 : 버블 정렬은 두 개의 인접한 요소를 스왑하여 올바른 위치에 배치하는 가장 간단한 정렬 알고리즘 기술입니다. 빠른 정렬은 분할 및 알고리즘 알고리즘 기술로 작동하여 중추적 인 요소가 주어진 배열 주위의 나눗셈
두 가지 정렬 기술이 컴퓨터 과학 분야에서 알맞은 위치를 차지하는 것으로 알려져 있지만 버블 정렬은 올바른 위치에 배치하기 위해 인접한 두 요소를 스와핑하는 가장 간단한 정렬 알고리즘 기술입니다. 반면에 빠른 정렬은 분할 및 win 알고리즘 기법을 사용하여 중 요 요소가 주어진 배열 주위의 분할 초점이됩니다.
이 두 개념을 좀 더 깊이 이해하기 위해 차이점을 정확하게 구분하여 더 명확하게 만들어 보겠습니다.
1. 접근법 : 명확한 아이디어를 얻으려면 먼저 알고리즘 접근 방식을 바탕으로 차별화하자.
버블 정렬 : 엘리먼트가 9, 5, 3, 6, 1 개의 5 개가 있다고 가정 해 보겠습니다. 오름차순으로 정렬해야합니다.
- 9 5 3 6 1 // 첫 번째 요소는 인접 요소를 확인하고 더 큰 경우 스왑합니다 (여기서는 9> 5)
- 5 9 3 6 1 // (9> 3)
- 5 3 9 6 1 // (9> 6)
- 5 3 6 9 1 // (9> 1)
- 5 3 6 1 9 // 9 최종 목적지에 도달했습니다.
이제 다음 반복이 시작됩니다.
- 5 3 6 1 9 // (5> 3)
- 3 5 6 1 9 // (5 <6) - 스와핑 없음
- 3 5 6 1 9 // (6> 1)
- 3 5 1 6 9 // (6 <9) - 스와핑 없음
- 3 5 1 6 9 // 6 최종 목적지에 도달 함
--- 몇 가지 반복 ---
최종 최종 결과는
1 3 5 6 9 // 모든 요소가 마침내 정렬됩니다.
빠른 정렬 : 7 개의 숫자로 구성된 더 큰 배열이 있다고 가정 해 보겠습니다 .
1 3 8 9 4 5 7
중추 수는 배열의 마지막 자리수 인 7 로 결정됩니다.
이제는 매번 7 명이 검사됩니다.
1 8 3 9 4 5 7 // 첫 번째 값이므로 교체하지 않습니다.
1 8 3 9 4 5 7 // 8> 7 이후로 교환하지 않음
1 3 8 9 4 5 7 // 3 <7 이후 3과 8 사이를 바꾼다.
1 3 8 9 4 5 7 // 9> 7 이후의 스와핑 없음
1 3 4 9 8 5 7 // 4 <7 이후 4와 8 사이를 바꾼다.
1 3 4 5 8 9 7 // 5 <7 이후 5와 9 사이를 바꾼다.
1 3 4 5 7 9 8 // 9> 7 이후 7과 8 사이를 스와핑
파티셔닝을 통해 7이 적절한 가치를 갖게 되었기 때문에 다음 단계를 수행 할 수 있습니다.
1, 3, 4, 5, 7, 9, 8 // 퀵은 재귀 적이기 때문에 1, 3, 4, 5와 9, 8의 다른 파티션을 호출 할 수 있습니다.
1, 3, 4, 5 // 는 피벗 점이며, 모든 요소를 검사합니다.
9, 8 // 8이 중 요점이되고 나머지 요소를 확인합니다.
8, 9 // 8 <9부터 8과 9 사이를 바꾼다.
둘 모두를 결합하면 최종 결과를 얻습니다.
1, 3, 4, 5, 7, 8, 9