今天公司不是很忙,就回顾了一下以前的冒泡排序和插入排序
package chen;
import java.util.Date;
public class Sort {
/**
* 冒泡排序
* @param list
* @author chenpengye
*/
public void sort(int[] list){
long begain=new Date().getTime();
for(int i=0;i<list.length;i++){
for(int j=0;j<list.length-i-1;j++){
if(list[j]>list[j+1]){
int temp=list[j];
list[j]=list[j+1];
list[j+1]=temp;
}
}
}
long end=new Date().getTime();
long result=end-begain;
System.out.println("冒泡排序时间:"+result+" mm");
/*for(int i=0;i<list.length;i++){
System.out.println(list[i]);
}*/
}
public static void main(String[] args) {
int[] list={11,6,2,9,1,4};
int[] data=new int[100000];
for(int i=0;i<100;i++){
data[i]=Math.round((float)Math.random()*1000000);
//System.out.println(data[i]);
}
Sort sort=new Sort();
//冒泡
sort.sort(data);
//插入
sort.insertSort(data);
}
/**
* 插入排序
* @param data
* @author chenpengye
*/
public void insertSort(int[] data){
int i,j;
long start=new Date().getTime();
for(i=1;i<data.length;i++){
int temp=data[i];
for(j=i;j>0&&data[j-1]>temp;j--){
//System.out.println("before:"+j);
data[j]=data[j-1];
}
//System.out.println("after:"+j);
data[j]=temp;
}
long end=new Date().getTime();
long res=end-start;
System.out.println("插入排序时间:"+res+" mm");
/*for(int m=0;m<data.length;m++){
System.out.print(data[m]+" ");
}*/
}
}
测试1: 数组个数:10000
冒泡排序时间:296 mm
插入排序时间:0 mm
测试1: 数组个数:100000
冒泡排序时间:29406 mm
插入排序时间:16 mm
分享到:
相关推荐
常用三种排序:快速排序、冒泡排序、插入排序的java实现示例
选择排序和冒泡排序想必大家都很熟悉,但插入排序一般新手却很难理解,插入排序的Java源代码
排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序.mht
JAVA排序算法: 直接插入,希尔排序,选择排序,堆排序,冒泡排序,快速排序,归并排序,包括算法的详细介绍,以及对几种算法的详细测试
插入排序 冒泡排序 堆排序 基数排序 选择排序 快速排序的源码 java实现
java插入冒泡选择三大排序java插入冒泡选择三大排序java插入冒泡选择三大排序java插入冒泡选择三大排序java插入冒泡选择三大排序java插入冒泡选择三大排序
java 代码实例 冒泡排序 直接插入排序 数组中插入数据
用java实现了以下算法: 1、冒泡排序、冒泡排序的两种改进。 2、插入排序。 3、选择排序。 4、希尔排序。 5、归并排序。 6、快速排序。
用java语言实现冒泡排序、插入排序、堆排序、快速排序、归并排序、希尔排序、桶排序,并且对各种排序算法进行性能的比较。
java排序算法java排序算法插入选择冒泡java排序算法插入选择冒泡
详细介绍选择排序、冒泡排序、插入排序且有相应的代码分析
设计一个负责排序的程序包,实现多种排序算法,至少包括插入排序、冒泡排序和快速排序算法。 要求: 1.可以对任何简单类型和任意对象进行排序 2.可以支持升序、降序、字典排序等多种顺序要求 3.可以随意增加排序算法...
JAVA排序大全 冒泡 快速 选择 归并排序
用户能够从终端选择三种排序算法中的一种,包括插入排序,堆排序,选择排序,同时被排序的数也可以通过键盘输入,不限制输入的数字的个数,运用了Java的面向对象的思想
java选择、插入、冒泡排序 java选择、插入、冒泡排序java选择、插入、冒泡排序java选择、插入、冒泡排序
java可运行排序算法:①插入排序、②冒泡排序、③选择排序、④学生学号按照成绩高低排序的一个简单实例。在java工程项目的源文件src中建立Array包,可运行这四个.java文件,便于对java中的排序算法及数组结构进一步...
Java代码-排序-直接插入排序、希尔排序、直接选择排序、冒泡排序、堆排序、快速排序、归并排序中部分排序以及算法-贪心法,大家可以将源码下载下来进行学习,附带着注释和解释,有不理解的可以找博主一起探讨,共同...
基础的java 冒泡法、选择法、插入法排序实现代码。
1直接插入排序 * 基本思想:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序 2冒泡排序 * 基本...
Java数组排序总结(冒泡_选择_插入_希尔)__递归算法的复杂度,实用