排序--插入
2016-04-08 14:10
288 查看
插入排序的算法分析:
1 首先假设第一个元素是排好序的,从第二个元素循环整个数组
2 取出当前的值,设置中间变量的作用
3 记录当前的元素的索引
4 循环将当前的值与前面的值进行比较,如果当前的值比前面元素的值小,则将前面的值向后移(复制),在将索引向前移动,直到移动到数组的开头索引的位置
5 将当前的值放到合适的位置
1 首先假设第一个元素是排好序的,从第二个元素循环整个数组
2 取出当前的值,设置中间变量的作用
3 记录当前的元素的索引
4 循环将当前的值与前面的值进行比较,如果当前的值比前面元素的值小,则将前面的值向后移(复制),在将索引向前移动,直到移动到数组的开头索引的位置
5 将当前的值放到合适的位置
public class test5 { //按体重进行排序 @Test public void test() throws Exception{ int a[]=new int[]{1,2,4,2,3,5,65,7,345,436,5,7,34}; int length=a.length; for(int i=1;i<length;i++){ //取出当前的值,设置中间变量的作用 int b=a[i]; // 记录当前的元素的索引 int j=i; while( j>0 && b<a[j-1]){ //循环将当前的值与前面的值进行比较,如果当前的值比前面元素的值小,则将前面的值向后移(复制),在将索引向前移动,直到移动到数组的开头索引的位置 a[j]=a[j-1]; j--; } //将当前的值放到合适的位置 a[j]=b; } for(int i=0;i<length;i++){ System.out.println(a[i]); } } }
相关文章推荐
- 容器模式
- java操作oracle的blob,clob数据
- multi_array.php
- Mybatis传多个参数
- struts2修改文件上传的大小
- 池技术----线程池
- 如何让apache支持.htaccess 解决Internal Server Error The server …错误
- struts2的工作原理
- java的关键字
- JSTL标签
- 安卓 ImageView伸缩放大缩小
- Android 的线程跟线程池
- 设计模式--单例模式
- Es/N0、EbN0与SNR区别
- 使用ab压测网页结果分析
- PHP基础知识练习
- EL(表达式语言)
- JDBC技术
- Java中的一些术语的解释
- Servlet过滤器和监听器