Java에서 버블 정렬이란 무엇입니까?

Java Eseo Beobeul Jeonglyeol Ilan Mueos Ibnikka



Java에서 정렬되지 않은 데이터를 처리하는 동안 대량 데이터를 오름차순으로 정렬하는 경우가 있을 수 있습니다. 예를 들어 런타임에 임의로 생성된 값을 정렬합니다. 그러한 상황에서 “ 버블 정렬 ” 알고리즘은 긴 배열을 즉시 정렬하는 데 도움이 되며 개발자 측에서 동시에 구현하는 것이 편리합니다.

이 블로그에서는 Java에서 '버블 정렬'의 사용 및 구현에 대해 설명합니다.

Java에서 '버블 정렬'이란 무엇입니까?

버블 정렬 ” 알고리즘은 가장 간단한 정렬 알고리즘입니다. 이 알고리즘에서 배열은 각 요소가 다음 요소와 비교되도록 첫 번째 요소부터 마지막 ​​요소까지 순회합니다. 이전 요소가 배열의 다음 요소보다 큰 경우 두 요소가 모두 교체됩니다.







시간 복잡도

버블 정렬 알고리즘에는 두 개의 중첩 루프가 있습니다. 따라서 시간 복잡도는 ' 오(n^2) ', 어디 ' N ”는 정렬해야 하는 배열의 길이에 해당합니다.



Java에서 '버블 정렬' 구현

아래 데모에서 버블 정렬 알고리즘의 구현이 수행되고 단계별로 설명됩니다.



공공의 공전 무효의 algobubbleSort ( 정수 [ ] 버블 어레이, 정수 길이 ) {

~을 위한 ( 정수 = 0 ; < 길이 - 1 ; ++ ) {

~을 위한 ( 정수 제이 = 0 ; 제이 < 길이 - - 1 ; 제이 ++ ) {

만약에 ( 버블 어레이 [ 제이 + 1 ] < 버블 어레이 [ 제이 ] ) {

정수 값 교환 = 버블 어레이 [ 제이 ] ;

버블 어레이 [ 제이 ] = 버블 어레이 [ 제이 + 1 ] ;

버블 어레이 [ 제이 + 1 ] = 값 교환 ;

} }

} }

정수 [ ] 주어진배열 = { 4 , 2 , 1 , , 10 , 8 , 열 다섯 } ;

정수 배열 길이 = 주어진배열. 길이 ;

algobubbleSort ( 주어진배열,배열길이 ) ;

체계 . 밖으로 . 인쇄 ( '버블 정렬 배열은 다음과 같이 됩니다. ' ) ;

~을 위한 ( 정수 = 0 ; < 배열 길이 ; ++ ) {

체계 . 밖으로 . 인쇄 ( 주어진배열 [ ] + ' ' ) ;

}

주어진 코드에 따라 입대 지침을 따르십시오.

  • 먼저 '라는 함수를 정의합니다. algobubbleSort() ” 여기서 전자 매개변수는 정렬해야 하는 전달된 배열을 가리키고 후자 매개변수는 해당(배열) 길이를 가리킵니다.
  • 함수 정의에서 첫 번째 '에서 누적된 배열 요소를 하나씩 반복합니다. ~을 위한 ' 루프.
  • 다음 단계에서 내부 ' ~을 위한 ” 두 번째 마지막 배열 요소까지 반복되는 루프. 각 반복에서 가장 큰 배열 요소가 마지막 인덱스에 배치되기 때문입니다. 따라서 이 반복에서는 피합니다.
  • 후자의 ' ~을 위한 ” 루프에서 이전 요소가 다음 요소보다 크면 더 작은 값이 오름차순에서 먼저 배치되는 방식으로 값이 스왑되는 조건을 확인합니다.
  • 기본에서 지정된 정수 값을 포함하는 배열을 정렬되지 않은 방식으로 선언합니다.
  • 다음 단계에서 ' 길이 ” 속성을 배열과 함께 사용하여 배열의 길이를 반환합니다.
  • 그런 다음 선언된 배열과 길이를 해당(함수) 매개 변수로 전달하여 정의된 함수를 호출합니다.
  • 마지막으로 길이를 고려하여 배열을 반복하면 액세스된 함수가 ' 버블 정렬 ” 오름차순 방식으로 배열.

산출

위의 출력에서 ​​주어진 배열이 그에 따라 정렬되었음을 관찰할 수 있습니다.

결론

버블 정렬 ”는 Java에서 배열의 첫 번째 요소에서 마지막 요소까지 순회하는 방식으로 수행되며 각 요소는 다음 요소와 한 단계씩 비교하여 배열이 오름차순으로 검색됩니다. 이 블로그는 Java의 버블 정렬 알고리즘 및 구현에 대해 자세히 설명했습니다.