数据结构之排序算法 直接插入排序java

xiaoxiao2021-02-28  11

代码如下:

public class insertSort { public void print(int a[]){ for(int x: a){ System.out.print(x+" "); } System.out.println(); } public void insertsort(int a[]){ for(int i=0;i<a.length-1;i++){//趟数,每趟插入第i+1个元素---待插入的数 int temp=a[i+1];//先把待插入的数备份到temp中 int j=i; /*从i(有序子序列的最后一个位置)往前遍历,找一个位置j,让a[j]不大于temp; 同时若a[j]大于temp则让该数往后挪个位置*/ while(temp<a[j]){ a[j+1]=a[j];//若a[j]大于temp则让该数往后挪个位置 j--; if(j<0){ break; } } //经过上面的操作,j+1位置就是temp将要放置的 a[j+1]=temp; } print(a); } public static void main(String[] args) { int a[]= {21,25,49,25,16,8,23,45,-3,4}; new insertSort().insertsort(a); } }
转载请注明原文地址: https://www.6miu.com/read-2603295.html

最新回复(0)