常用Java排序算法
冒泡排序 、选择排序、快速排序
1 package com.javaee.corejava; 2 3 public class DataSort { 4 5 public DataSort() { 6 // TODO Auto-generated constructor stub 7 } 8 9 public static void main(String[] args) {10 int[] p = { 34, 21, 54, 18, 23, 76, 38, 98, 45, 33, 27, 51, 11, 20, 79, 11 30, 89, 41 }; 12 13 long start = System.currentTimeMillis(); 14 15 DataSort.bubbleSort(p);// 冒泡排序 16 //DataSort.selectSort1(p);// 选择排序 1 17 //DataSort.selectSort2(p);// 选择排序2 18 //DataSort.quickSort(p, 0, p.length - 1);// 快速排序 19 20 System.out.println("所用时间:" + (System.currentTimeMillis() - start)); 21 for (int i = 0; i < p.length; i++) { 22 System.out.print(p[i] + " "); 23 } 24 25 }26 //冒泡排序27 public static void bubbleSort(int[] data){28 for(int i=0;idata[j+1]){31 int temp=data[j];32 data[j]=data[j+1];33 data[j+1]=temp;34 }35 }36 }37 }38 //选择排序139 public static void selectSort1(int[] data){40 if(data==null||data.length==0){41 return;42 }43 for(int i=0;i data[j]){62 int temp=data[i];63 data[i]=data[j];64 data[j]=temp;65 }66 }67 }68 }69 //快速排序70 public static void quickSort(int[] data,int start,int end){71 int key=data[start];72 int i=start;73 int j=end;74 while(i key&&i start){86 quickSort(data,start,i-1);87 }88 if(i+1