- 快速排序
每次排序選取一個中間值,小的放到左邊,大的放到右邊;
public static void main(String[] args) {
// TODO Auto-generated method stub
int arry[] = {7,5,4,2,19,10,8,84,4,1,5,6};
quickSort(arry,0,arry.length - 1);
for (int i : arry) {
System.out.print(i+" ");
}
}
public void quickSort(int []arr,int left,int right){
int i = left;
int j = right;
int temp = arr[i];
// 是否進入遞歸
if(i < j){
// 判斷是否完成一次快排
while(i < j){
while(arr[j] >= temp && i < j){
j--;
}
arr[i] = arr[j];
while(arr[i] < temp && i < j){
i++;
}
arr[j] = arr[i];
}
arr[i] = temp; //中間值賦值
if(i!=left)
quickSort(arr,left,i-1);
if(i!=right)
quickSort(arr,i+1,right);
}
}
- 第一章 java SE
- 1.1數據類型
- 1.2 流程控制語句
- 1.3 方法
- 1.4 面向對象三特性
- 1.5 對象數組與集合
- 1.6 數組和集合操作工具類
- 1.7 可變參數
- 1.8 String
- 1.9 StringBuilder
- 1.10 final&&finally&&finalize
- 1.11 抽象類與接口
- 1.12 基本數據類型的包裝類
- 1.13 泛型
- 1.14 內部類
- 1.15 throw & throws & try catch
- 1.16 線程
- 1.17 BeanUtils
- 1.18 java反射
- 1.19 序列化和反序列化
- 1.20 IO輸入輸出流
- 1.21 File
- 1.22 RandomAccessFile
- 1.23 第三方工具CommonsIO
- 1.24 java網絡傳輸
- 第二章 java EE
- 2.1 maven的配置
- 2.2 Cookie
- 2.3 EL表達式 JSTL
- 2.4 驗證相關
- 2.4.1 驗證碼
- 2.5 防重復提交
- 2.6 activeMq的使用
- 2.7 jtl的使用
- 2.8 Upload上傳文件
- 第三章 Spring相關
- 3.1 IOC/DI
- bean的生命周期
- bean的配置
- 3.2 Spring Aop
- 3.3 Spring Jdbc
- 3.4 事物相關
- 事物
- 事物的使用
- 3.5 MBG使用
- 第四章 解決問題方法
- 4.1 List轉換為Map
- 4.2 結果返回類
- 4.3 HSSF的使用
- 第五章 排序
- 5.1 冒泡排序
- 5.2 選擇排序
- 5.3 快速排序