Java实现直接插入查找

时间:2023-02-01 01:35:09
 import java.util.Scanner;

 /*算法思想:每趟将一个待排序的元素作为关键字,按照关键字值大小插入到已排好序的那部分序列的适当位置上,直到插入完成,*/
/*平均时间复杂度O(n^2),空间复杂度O(1)*/
/*特点:插入排序都是最后一趟完成之前,没有任何一个记录到达其最终位置*/ public class zhijiecharusort {
public static void main(String strg[]){
Scanner cin = new Scanner(System.in);
String str = cin.nextLine();
String st[] = str.split(" ");
int c[]=new int[st.length];
for(int i=0;i<st.length;i++){
c[i]=Integer.parseInt(st[i]);
}
insertSort(c);
for(int i=0;i<st.length;i++){
System.out.print(c[i]);
System.out.print(" ");
}
cin.close();
}
public static void insertSort(int R[]){
int temp;
int j;
for(int i=1;i<R.length;i++){
temp=R[i];
j=i-1;
while(j>=0&&temp<R[j]){
R[j+1]=R[j];
j--;
}
R[j+1]=temp;
}
}
}