คำอธิบายอัลกอริทึม: สำหรับอาร์เรย์ที่กำหนดในขั้นต้นสมมติว่าบันทึกแรกในรูปแบบลำดับที่สั่งซื้อและส่วนที่เหลือเป็นลำดับที่ไม่ได้เรียงลำดับ จากนั้นเริ่มต้นจากระเบียนที่สองบันทึกที่ประมวลผลในปัจจุบันจะถูกแทรกลงในลำดับที่สั่งก่อนหน้านี้ตามขนาดของระเบียนจนกระทั่งบันทึกสุดท้ายจะถูกแทรกลงในลำดับที่สั่งซื้อ
บทช่วยสอนการใช้งานการเรียงลำดับโดยตรงของ Java
ตัวอย่างที่ 1
การแทรกระดับสาธารณะ {โมฆะคงที่สาธารณะหลัก (สตริง [] args) {int a [] = {9,3,28,6,34,7,10,27,1,1,5,8}; แสดง (a); สำหรับ (int i = 1; I insertone (a, i);} show (a);} void คงที่แสดง (int a []) {สำหรับ (int i = 0; i system.out.out.print (a [i]+"");} system.out.println (); i = 0; i <= k; i ++) {ถ้า (a [i]> = a [k]) {int temp = a [k]; // ใส่ [k] ไปยังตัวแปรกลางก่อนที่จะย้าย // เลื่อนกลับจากจำนวนที่อยู่ด้านหน้าของตำแหน่ง k ในตัวแปรระดับกลางถึง [I] และค่าที่ฉันหลังจากย้ายจะว่างเปล่า}}}}}ตัวอย่างที่ 2
การเรียงลำดับแพ็คเกจ;/*** แทรกการเรียงลำดับ* เฉลี่ย o (n^2), ที่ดีที่สุด o (n), ที่เลวร้ายที่สุด o (n^2); ความซับซ้อนของพื้นที่ o (1); มั่นคง; ง่าย * @author Zeng * */การแทรกระดับสาธารณะ {การแทรกโมฆะคงที่สาธารณะ (int [] a) {int tmp; สำหรับ (int i = 1; i <a.length; i ++) {สำหรับ (int j = i; j> 0; j--) a [j]; a [j] = tmp;}}}} โมฆะคงที่สาธารณะหลัก (สตริง [] args) {int [] a = {49, 38, 65, 97, 76, 13, 27, 50}; insertionsort (a); สำหรับ (int i: a) ระบบสรุป
ข้างต้นคือทั้งหมดที่เกี่ยวกับการใช้งานการเขียนโปรแกรม Java ของตัวอย่างรหัสการเรียงลำดับโดยตรง ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน เพื่อนที่สนใจสามารถอ้างถึงหัวข้ออื่น ๆ ที่เกี่ยวข้องในเว็บไซต์นี้ต่อไป หากมีข้อบกพร่องใด ๆ โปรดฝากข้อความไว้เพื่อชี้ให้เห็น ขอบคุณเพื่อนที่ให้การสนับสนุนเว็บไซต์นี้!