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

你可能感兴趣的:(java,Date,list,String,测试,float)