插入排序的原理是:每次比较时记录元素角标的位置,从而减少了每次交换位置的次数,提供了效率,代码如下:- class Demo
- {
- public static void main(String[] args)
- {
- int[] arr ={1,5,2,32,11,323,4,8,6};
- sort(arr);
- print(arr);
- }
- public static void sort(int[] arr)
- {
- for (int i = 1;i<arr.length ;i++ )
- {
- int temp = arr[i];
- int j = i-1;
- while (temp<arr[j])
- {
- arr[j+1]=arr[j];
- j--;
- if (j==-1)
- {
- break;
- }
- arr[j+1]=temp;
- }
- }
- }
- public static void print(int[] arr)
- {
- for (int x =0;x<arr.length ;x++ )
- {
- System.out.println(arr[x]);
- }
- }
- }
复制代码 |