Java에서 버블 정렬 알고리즘을 구현하는 방법 – 오름차순 및 내림차순 예제

게시 됨: 2019-01-19
Java에서 버블 정렬 알고리즘을 구현하는 방법 - 오름차순 및 내림차순 예제

때때로 sinking sort 이라고 잘못 언급되는 Bubble sort 은 정렬할 목록을 반복적으로 단계별로 실행하고 인접한 항목의 각 쌍을 비교하고 순서가 잘못된 경우 교체하여 작동하는 간단한 정렬 알고리즘입니다.

목록을 통한 전달은 스왑이 필요하지 않을 때까지 반복되며 이는 목록이 정렬되었음을 나타냅니다. 알고리즘은 더 작은 요소가 목록의 맨 위로 bubble 되는 방식에서 이름을 얻습니다.

요소에 대해 작업하기 위해 비교만 사용하기 때문에 비교 정렬입니다. 알고리즘은 간단하지만 대부분의 다른 정렬 알고리즘은 큰 목록에 더 효율적입니다.

논리는 간단합니다.

버블 정렬에서는 기본적으로 배열 목록을 첫 번째 위치에서 (크기 – 1) 위치로 탐색하고 요소를 다음 위치와 비교합니다. 다음 요소가 더 큰 경우에만 요소를 다음 요소로 교체합니다.

다음은 자바 코드입니다.

  • CrunchifyBubbleSort.java 파일을 생성합니다.

Eclipse 콘솔 결과:

Eclipse 콘솔 또는 IntelliJ IDE에서 Bubble Sort Java 프로그램 위를 실행하면 아래와 같은 결과가 표시됩니다.

버블 정렬 알고리즘의 시간 복잡도란?

  • Best case 시나리오를 고려한다면 O(n) 이 될 것입니다.
  • Worst case 시나리오를 고려한다면 O(n 2 )

프로그램 위에서 실행되는 문제나 예외가 있으면 알려주십시오.