`
dowhathowtodo
  • 浏览: 778530 次
文章分类
社区版块
存档分类
最新评论

java 插入排序和冒泡排序研究

 
阅读更多

今天公司不是很忙,就回顾了一下以前的冒泡排序和插入排序

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

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics