먼저 코드를 게시하십시오 (소형에서 대형으로 정렬) :
Public Class Bubblesort {public static void main (String args []) {double [] a = {0,1,5,9,10,2,4,6,3,7,8, -3,0.4, -2.5}; for (int i = 0; i <a.length-1; i ++) {// 외부 루프는 (int j = 0; j <a.length-i-1; j ++)의 정렬 트립을 제어합니다. {// 내부 루프는 각 트립이 (j]> a [j+1])이면 몇 번 정렬되는지 (a [j]> a [j+1]) a [j] = a [j+1]; // 큰 값을 뒷면으로 바꿉니다 [j+1] = num; // 작은 값을 뒤로 바꾸십시오}}}} (double k : a) {// foreach loop output system.out.println (k); } // for (int k = 0; k <a.length; k ++) {// loop // system.out.println (a [k]); //}}}참고 : 크게 대형으로 마련해야하는 경우 IF 문의 상징보다 큰 것을 수정하십시오.
주석 : A.length-1 및 J <A.length-I-1
예를 들어 : 배열을 정렬하려면 : int [] arr = {6,3,8,2,9,1}; (참고 출처 : //www.vevb.com/article/68204.htm)
첫 번째 순서 : (i)
첫 번째 정렬 : 6 및 3 비교, 6은 3보다 크고 스왑 위치 : 3 6 8 2 9 1
두 번째 정렬 : 6 및 8 비교, 6은 8 미만이고 교환 위치 없음 : 3 6 8 2 9 1
세 번째 순서 : 8 및 2 비교, 8은 2보다 크고 스왑 위치 : 3 6 2 8 9 1
네 번째 순서 : 8 및 9 비교, 8은 9보다 작고 교환 위치 없음 : 3 6 2 8 9 1
다섯 번째 순서 : 9 및 1 비교 : 9는 1보다 크며 스왑 위치 : 3 6 2 8 1 9
첫 번째 여행에서 총 5 (j) 비교가 수행되었으며, 분류 결과 : 3 6 2 8 1 9
두 번째 순서 : (i)
첫 번째 정렬 : 3 및 6 비교, 3은 6 미만, 스왑 위치 없음 : 3 6 2 8 1 9
두 번째 정렬 : 6 및 2 비교, 6은 2보다 크고 스왑 위치 : 3 2 6 8 1 9
세 번째 순서 : 6 및 8 비교, 6은 8보다 크며 교환 위치 없음 : 3 2 6 8 1 9
네 번째 순서 : 8 및 1 비교, 8은 1보다 크고 스왑 위치 : 3 2 6 1 8 9
두 번째 여행은 총 4 (j) 시간에 비교되었고, 분류 결과 : 3 2 6 1 8 9
세 번째 순서 : (i)
첫 번째 정렬 : 3 및 2 비교, 3은 2보다 크고 스왑 위치 : 2 3 6 1 8 9
두 번째 정렬 : 3 및 6 비교, 3은 6 미만, 스왑 위치 없음 : 2 3 6 1 8 9
세 번째 순서 : 6 및 1 비교, 6은 1보다 크고 스왑 위치 : 2 3 1 6 8 9
두 번째 여행은 총 3 (j) 시간에 비교되었으며, 분류 결과 : 2 3 1 6 8 9
네 번째 순서 : (i)
첫 번째 정렬 : 2 및 3 비교, 2는 3 미만, 스왑 위치 없음 : 2 3 1 6 8 9
두 번째 정렬 : 3 및 1 비교, 3은 1보다 크며 스왑 위치 : 2 1 3 6 8 9
두 번째 여행은 총 2 (j) 시간에 비교되었으며, 분류 결과 : 2 1 3 6 8 9
다섯 번째 순서 : (i)
첫 번째 정렬 : 2 및 1 비교, 2는 1보다 크며 스왑 위치 : 1 2 3 6 8 9
두 번째 여행은 총 1 (j) 시간에 비교되었다. 분류 결과 : 1 2 3 6 8 9
최종 결과 : 1 2 3 6 8 9