| 버블정렬 개념 | 버블정렬 알고리즘 | 버블정렬 분석 |

 

버블 정렬 개념

■ 버블 정렬 개념

  • 주어진 파일에서 두 개의 인접한 레코드의 키를 비교하여 키 값에 따라 레코드의 위치를 서로 교환한다.
  • n개의 입력 레코드로 구성된 파일에서 오름차순으로 정렬할 경우 첫 번째 레코드와 두 번째 레코드의 키를 비교하여 키 값이 작은 레코드를 앞에 위치시킨 후, 두 번째 레코드와 세 번째 레코드의 키를 비교하여 키 값이 작은 레코드의 위치를 결정하는 과정을 반복해서 마지막으로 n-1번째와 n번째 레코드를 비교하여 위치를 교환하면 1회의 반복이 완료
  • 이때 n번째 위치하는 레코드는 키 값이 가장 큰 레코드가 됨
  • 다시 n 번째 위치한 레코드를 제외한 나머지 n-1개의 레코드를 위와 동일한 수행방법으로 반복하면 2회의 작업이 끝나며, n-1번째 위치한 레코드는 두 번째로 큰 레코드가 됨
  • 이와 같은 작업을 반복 수행하며 마지막 n-1회의 반복에서는 첫 번째와 두 번째 레코드의 키를 비교하여 작은 키 값을 가진 레코드를 첫 번째에 위치시킴으로써 모든 작업이 완료됨
  • 매 단계가 수행될 때마다 정렬이 아직 완료되지 않은 데이터들 중 가장 큰 데이터가 배열의 마지막으로 떠오른다고 하여 버블정렬