يشير الفرز بالإدراج المباشر إلى إدراج العناصر التي سيتم فرزها واحدًا تلو الآخر في التسلسل المرتب الذي تم فرزه مسبقًا حتى يتم إدراج جميع العناصر، والخطوات الرئيسية هي كما يلي:
1) افترض أولاً أنه تم فرز العنصر الأول.
2) ثم أخرج العنصر التالي الذي لا يزال بحاجة إلى الفرز، أي العنصر التالي بعد العنصر الذي تم فرزه، وأخرج العنصر التالي، وقم بتعيينه كعنصر ليتم إدراجه، وقم بالمسح من الخلف إلى الأمام في العنصر الذي تم فرزه تسلسل العناصر إذا كان العنصر (المفرز) أكبر من العنصر المراد إدراجه، انقل العنصر إلى الموضع التالي.
3) كرر الخطوة 2 حتى تجد موضعًا يكون فيه العنصر المفرز أقل من أو يساوي العنصر المطلوب فرزه، ثم أدخل العنصر.
4) كرر الخطوتين 2 و 3 لإكمال الفرز.
على سبيل المثال:
importjava.util.Arrays;publicclassMain{publicstaticvoidmain(Stringargs[]){int[]arr=newint[]{17,62,39,52,8,24};for(inti=1;i<arr.length;i++ ){// قارن بدءًا من العنصر الثاني inttemp=arr[i];// سجل العنصر الحالي for(i) ntj=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