โพสต์รหัสก่อน (จัดเรียงจากขนาดเล็กถึงใหญ่):
Bubblesort ระดับสาธารณะ {โมฆะคงที่สาธารณะหลัก (String args []) {double [] a = {0,1,5,9,10,2,4,4,6,3,7,7,8, -3,0.4, -2.5}; สำหรับ (int i = 0; i <a.length-1; i ++) {// รอบนอกควบคุมจำนวนการจัดเรียงทริปสำหรับ (int j = 0; j <a.length-i-1; j ++) {// วงในควบคุมจำนวนการเดินทางแต่ละครั้ง (A [J]> A [J+1]) a [j] = a [j+1]; // เปลี่ยนค่าใหญ่ไปที่ด้านหลัง a [j+1] = num; // เปลี่ยนค่าเล็ก ๆ ไปที่ด้านหลัง}}} สำหรับ (double k: a) {// foreach loop output system.out.println (k); } // สำหรับ (int k = 0; k <a.length; k ++) {// สามัญสำหรับลูป // 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, swap position: 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