การเรียงลำดับการแทรกโดยตรง หมายถึงการแทรกองค์ประกอบที่จะจัดเรียงทีละรายการในลำดับที่เรียงลำดับก่อนหน้านี้จนกระทั่งองค์ประกอบทั้งหมดถูกแทรก ขั้นตอนหลักมีดังนี้:
1) ขั้นแรกสมมติว่าองค์ประกอบแรกได้รับการจัดเรียงแล้ว
2) จากนั้นนำองค์ประกอบถัดไปที่ยังต้องเรียงลำดับออก นั่นคือ องค์ประกอบถัดไปหลังจากองค์ประกอบที่เรียงลำดับแล้ว นำองค์ประกอบถัดไปออก ตั้งเป็นองค์ประกอบที่จะแทรก และสแกนจากหลังไปด้านหน้าในการเรียงลำดับ ลำดับองค์ประกอบ หากองค์ประกอบ (เรียงลำดับ) มีขนาดใหญ่กว่าองค์ประกอบที่จะแทรก ให้ย้ายองค์ประกอบไปยังตำแหน่งถัดไป
3) ทำซ้ำขั้นตอนที่ 2 จนกว่าคุณจะพบตำแหน่งที่องค์ประกอบที่เรียงลำดับน้อยกว่าหรือเท่ากับองค์ประกอบที่จะเรียงลำดับ และแทรกองค์ประกอบนั้น
4) ทำซ้ำขั้นตอนที่ 2 และ 3 เพื่อสิ้นสุดการเรียงลำดับ
ตัวอย่างเช่น:
importjava.util.Arrays;publicclassMain{publicstaticvoidmain(Stringargs[]){int[]arr=newint[]{17,62,39,52,8,24};สำหรับ(inti=1;i<arr.length;i++ ){//เริ่มการเปรียบเทียบจากองค์ประกอบที่สอง inttemp=arr[i];//บันทึกองค์ประกอบปัจจุบันสำหรับ(intj=i-1;j>=0;j--){//เริ่มการเปรียบเทียบจากองค์ประกอบสุดท้าย องค์ประกอบ if (arr[j]>temp){//หากมีขนาดใหญ่กว่าองค์ประกอบปัจจุบัน arr[j+1]=arr[j];//ย้ายองค์ประกอบทั้งหมดจากที่นี่ไปข้างหน้าหนึ่งตำแหน่ง arr[j]=temp; / /แทรกองค์ประกอบปัจจุบันลงใน arr[j]}}}for(inti=0;i<arr.length;i++){System.out.print(arr[i]+);}}} ผลการวิ่งมีดังนี้:
81724395262