Java实现直接插入查找

 1 import java.util.Scanner;
 2 
 3 /*算法思想:每趟将一个待排序的元素作为关键字,按照关键字值大小插入到已排好序的那部分序列的适当位置上,直到插入完成,*/
 4 /*平均时间复杂度O(n^2),空间复杂度O(1)*/
 5 /*特点:插入排序都是最后一趟完成之前,没有任何一个记录到达其最终位置*/
 6 
 7 public class zhijiecharusort {
 8     public static void main(String strg[]){
 9         Scanner cin = new Scanner(System.in);
10         String str = cin.nextLine();
11         String st[] = str.split(" ");
12         int c[]=new int[st.length];
13         for(int i=0;i<st.length;i++){
14             c[i]=Integer.parseInt(st[i]);
15         }
16         insertSort(c);
17         for(int i=0;i<st.length;i++){
18             System.out.print(c[i]);
19             System.out.print(" ");
20         }
21         cin.close();
22     }
23     public static void insertSort(int R[]){
24         int temp;
25         int j;
26         for(int i=1;i<R.length;i++){
27             temp=R[i];
28             j=i-1;
29             while(j>=0&&temp<R[j]){
30                 R[j+1]=R[j];
31                 j--;
32             }
33             R[j+1]=temp;
34         }        
35     }
36 }
原文地址:https://www.cnblogs.com/Janejxt/p/5811706.html