插入排序

Posted lyc-code

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了插入排序相关的知识,希望对你有一定的参考价值。

插入排序思想

假设有一个int类型,数组长度为n的数组

1.我们要保证数组下标在0~0中有序排列,这是肯定的,在0~0中只有一个数字

2.保证数组下标在0~1中有序,我们要比较下标为0与下标为1的数字,若下标为1大于下标为0的数字,就进行交换

3.保证数组下标在0~2中有序,因为下标在0~1中已经有效,所以只需用数组下标为2的数与0~1中数进行比较

。。。。。。。。

保证数组下标在0~n-1中有序,就要用数组下标为n-1的数与数组下标为0~n-2范围中的数字进行比较

代码

 1         int[] a = {6,4,5,3,1};
 2         //数组下标范围在0~0中已经有效,所以外层循环从1开始,即从范围0~1开始
 3         for (int i = 1; i < a.length; i++){
 4             //每一次都是下标最后的数字与前面下标的数字逐个比较,直到比较到数组下标为0时结束
 5             for (int j = i-1; j >=0; j--){
 6                 if (a[j] > a[j+1]){
 7                     int b = a[j];
 8                     a[j] = a[j+1];
 9                     a[j+1] = b;
10                 }
11             }
12         }
13         for (int i = 0; i < a.length; i++){
14             System.out.println(a[i]);
15         }    

 

以上是关于插入排序的主要内容,如果未能解决你的问题,请参考以下文章

KDoc:插入代码片段

代码片段使用复杂的 JavaScript 在 UIWebView 中插入 HTML?

将代码片段插入数据库并在 textarea 中以相同方式显示

关于在各浏览器中插入音频文件的html代码片段

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段