java快速排序
来源:互联网 发布:求矩阵的行列式的值 编辑:程序博客网 时间:2024/05/18 12:31
public class QuickSort{public static void main(String[] args) {int[] arr = {5,6,6,4,9,5,5,5,2,7,8,1};print(arr);sort(arr, 0, arr.length - 1);print(arr);}//打印方法public static void print(int[] arr) {for(int i = 0; i < arr.length; i++){System.out.print(arr[i] + " ");}System.out.println();}//排序方法public static void sort(int[] arr, int low, int high){if(low >= high)return;if((high-low) == 1){if(arr[low] > arr[high])swap(arr, low, high);return;}int temp = arr[low];int left = low + 1;int right = high;while(left < right) {//从left位置开始向右找大于temp的值while(left < right) {if(arr[left] > temp)break;left++;}//从right开始向左找小于temp的值while(left <= right) {if(arr[right] <= temp)break;right--;}if(left < right){swap(arr, left, right);left++;right--;}}swap(arr, low, right);sort(arr, low, right - 1);sort(arr, right + 1, high);}//交换函数public static void swap(int[] arr, int i, int j) {int temp ;temp = arr[i];arr[i] = arr[j];arr[j] = temp;}}
0 0
- 排序-快速排序-Java
- java排序之快速排序
- Java排序算法 快速排序
- 快速排序(java排序)
- java 快速排序,冒泡排序
- 算法:排序----Java快速排序
- 【交换排序】快速排序--Java
- java 插入排序+快速排序
- Java 排序之 快速排序
- java排序之快速排序
- Java排序算法:快速排序
- Java排序-快速排序
- Java排序算法:快速排序
- Java排序算法--》快速排序
- JAVA排序算法---快速排序
- Java 快速排序 归并排序
- Java排序算法--快速排序
- java 冒泡排序、快速排序
- 事物发展总会出人意料
- Binary Tree Preorder Traversal
- 面试题5
- 菜鸟成长路上的自我激励
- HDU 3308 LCIS (线段树·单点更新·区间合并)
- java快速排序
- Android开发学习笔记:Intent的简介以及属性的详解
- uva10341(解方程)
- mybatis异常:Improper inline parameter map format. Should be: #{propName,attr1=val1,attr2=val2}问题分析及解决
- 创建属于自己的代码仓库吧!
- poj 3009 Curling 2.0
- Xampp中mysql错误
- Linux进程管理 - PRI,nice,free,uname,netstat
- Swift学习笔记之函数