ชั้น: การอนุญาต NUMS: สาธารณะ
วิธีการ: การอนุญาตหลัก: สาธารณะ
พารามิเตอร์: nums, i, j, num;
การแนะนำพารามิเตอร์:
NUMS ประเภทข้อมูล int [] ใช้เพื่อจัดเก็บชุดของอาร์เรย์ของประเภท int;
i, ประเภทข้อมูล int เป็นตัวแปรลูปของ For Loop เก็บจำนวนรอบสำหรับการเรียงลำดับและการเปรียบเทียบ
J, ประเภทข้อมูล int เป็นตัวแปรลูปสำหรับการวนรอบจัดเก็บจำนวนครั้งที่การเรียงลำดับและการเปรียบเทียบจะดำเนินการ;
NUM, ประเภทข้อมูล int เป็นตัวแปรบุคคลที่สามที่แลกเปลี่ยนระหว่างสองค่า
ฟังก์ชันวิธีการ:
กำหนดอาร์เรย์ int [];
ตั้งค่าตัวแปรลูป I เพื่อบันทึกจำนวนรอบการเปรียบเทียบ
ตั้งค่าตัวแปรลูป j เพื่อบันทึกจำนวนการเปรียบเทียบในการเปรียบเทียบรอบนี้
เปรียบเทียบหมายเลขแรกที่ไม่ได้เรียงลำดับในอาร์เรย์กับหมายเลขอื่น ๆ ที่ตามมา
หากหมายเลขแรกที่ไม่ได้เรียงลำดับนั้นเล็กกว่าจำนวนที่เปรียบเทียบกับมันให้แลกเปลี่ยนตำแหน่งของพวกเขาเพื่อให้แน่ใจว่าหมายเลขแรกที่ไม่ได้เรียงลำดับนั้นเป็นจำนวนมากที่สุดที่มีส่วนร่วมในการเปรียบเทียบ
หลังจากลูปเสร็จสิ้นผลลัพธ์การเรียงลำดับจะถูกส่งออกโดยใช้วนซ้ำ
การคัดลอกรหัสมีดังนี้:
ชั้นเรียนสาธารณะ numsi {
โมฆะคงที่สาธารณะหลัก (สตริง [] arge) {
// กำหนดหมายเลข int ที่มีประเภทอาร์เรย์ประเภทและกำหนดค่าเริ่มต้น;
int [] nums = new int [] {12,24,34,14,45,17,65,51,25}};
// แจ้งวิธีการเรียงลำดับและใช้เอาต์พุตซ้ำไปยังสถานะเริ่มต้นของอาร์เรย์
System.out.println ("การสาธิตการเรียงลำดับฟอง");
System.out.print ("ข้อมูลเริ่มต้น");
สำหรับ (int num: nums) {
System.out.print (num + "");
-
System.out.println ();
// ตั้งค่ารอบเพื่อบันทึกจำนวนรอบการเปรียบเทียบ;
สำหรับ (int i = 0; i <nums.length-1; i ++) {
// ตั้งค่ารอบเพื่อบันทึกจำนวนการเปรียบเทียบในการเปรียบเทียบรอบนี้
สำหรับ (int j = 0; j <nums.length-1-i; j ++) {
// เปรียบเทียบค่าก่อนหน้าในอาร์เรย์ NUMS [] กับค่าหลังจากนั้น
if (nums [j] <nums [j+1]) {
// สลับ nums [] อาร์เรย์;
int num = nums [j];
nums [j] = nums [j+1];
nums [j+1] = num;
// ส่งออกค่าของสองตำแหน่งการแลกเปลี่ยน;
System.out.print (nums [j + 1] + "และ" + nums [j] + "เปลี่ยนตำแหน่ง" + "");
} else {// หากไม่มีการแลกเปลี่ยนให้พิมพ์ช่องว่างเพื่อให้รูปแบบเอาต์พุตเรียบร้อย
System.out.print ("");
-
// ใช้วนซ้ำเพื่อส่งออกผลลัพธ์หลังจากการเรียงลำดับนี้เสร็จสิ้น
สำหรับ (int num: nums) {
System.out.print (num + "");
-
// มีการเปรียบเทียบ;
System.out.println ("ทำการเปรียบเทียบ");
-
// การแจ้งเตือนให้ทำการเปรียบเทียบ
System.out.println ("การเปรียบเทียบรอบนี้สิ้นสุดลง");
-
// พรอมต์ค่อนข้างสมบูรณ์และใช้ผลลัพธ์การทำซ้ำ
System.out.println ("เสร็จสมบูรณ์");
สำหรับ (int num: nums) {
System.out.print (num +"");
-
-
-