插入排序 java实现
2016-05-10 10:07
417 查看
插入排序也是一种经典的排序方式,适合于已经基本有序,且数据量较小的数组。自己动手写了一个java版本的插入排序。请同学们参考。
运行的结果:
具体的思路,其实代码里的注释已经解释得很清楚。等有空了再补个图吧。嘿嘿
package leilei.bit.edu.t2; public class InsertSort { public static void insertSort(int[] a) { int arr_length = a.length; int j; //当前位置,第j个要确定的位置 int i; //往前推要比较的位置。 int value; //当前位置,第j个位置的值 System.out.print("Before sort, the array is:"); printArr(a); //从第二个位置开始循环比较 for(j = 1; j < arr_length; j++) { value = a[j]; i = j - 1; //如果第i个位置比当前位置的数要大,将第i个位置的数据往后移 while(i>0 && a[i]>value) { a[i+1] = a[i]; i--; } //找到当前位置,即第j个位置的值需要插入的具体位置。 a[i+1] = value; } System.out.print("After sort , the array is:"); printArr(a); } public static void printArr(int[] a) { for(int i=0; i<a.length; i++) { System.out.print(a[i] + " "); } System.out.println(); } public static void main(String[] args) { int[] a = {1,5,4,3,8,9,7,6,2}; insertSort(a); } }
运行的结果:
Before sort, the array is:1 5 4 3 8 9 7 6 2 After sort , the array is:1 2 3 4 5 6 7 8 9
具体的思路,其实代码里的注释已经解释得很清楚。等有空了再补个图吧。嘿嘿
相关文章推荐
- java中的基本数据类型一定存储在栈中吗?
- eclipse主题样式
- java开发--验证码
- 使用Spring MVC构建REST风格WEB应用
- java collections集合类总结:概述
- Java 基础知识(二)之面向对象技术
- hive1.2.1源码导入eclipse
- 69 个经典 Spring 面试题和答案
- How to Install OpenJDK 8 in Ubuntu 14.04 & 12.04 LTS
- JavaBean中DAO设计模式介绍 .
- java中的 FileWriter类 和 FileReader类的一些基本用法
- Spring事务:调用同一个类中的方法
- 两个好用的eclipse js编辑器插件
- java可变参数总结
- java-获取.csv文件里的数据,并且获取文件夹下所含有对象的个数
- java中Cookie的使用
- SpringBoot 模板引擎 Template engines
- Java——ThreadLocal类
- 举例讲解Java设计模式编程中Decorator装饰者模式的运用
- Java——ThreadLocal类