java初级算法

来源:互联网 发布:陈墨网络营销策划机构 编辑:程序博客网 时间:2024/05/29 09:43

Java的快速排序和冒泡排序比较 

快速排序 

public static void quickSort(int list[],int low,int hight){if(low<hight){int middle = getMiddleValue(list, low, hight);quickSort(list, low, middle-1);quickSort(list, middle+1, hight);} }
public static int getMiddleValue(int list[] ,int low,int hight){int tmp=list[low];while (low<hight) {while(low<hight&&list[hight]>=tmp){hight--;  } list[low]=list[hight]; while(low<hight&&list[low]<=tmp){low++;  }list[hight]=list[low];} list[low] = tmp;  return low;}
冒泡排序

public  static void mSort(int list[]){for (int i = 0; i < list.length; i++) {for (int j = i+1; j < list.length; j++) {if(list[j]<=list[i]){swap(list, i, j);} }}}public static void swap(int list[] ,int i,int j){int tmp=list[i];list[i]=list[j];list[j]=tmp;}

经过测试在数组大小为500时 
冒泡的执行时间是:27~30 ms 
快速排序的执行时间是: 22~24ms

以前在另外一个账号上面写过,那个账号用来给大神投票用了大笑



0 0