黑马程序员技术交流社区
标题:
快排序
[打印本页]
作者:
李见黎
时间:
2012-3-27 21:57
标题:
快排序
刚才化了几分钟搞定的一个快排序
/**
* 快速排序法
* @author 李见黎
*2012-3-27
*/
class QuickSort
{
public void QuickSortFun(int []arr)
{
QSort(arr, 0, arr.length-1);
}
/**
* 递归实现快排序
* @param 待排序数组
* @param 低位置
* @param 高位置
*/
public void QSort(int []arr,int low,int high)
{
if(low<high)
{
int tempt=Partition(arr, low, high);
QSort(arr, low, tempt-1);
QSort(arr, tempt+1, high);
}
}
/**
* 划分
* @return 一次划分完之后所得到的标识的位置
*/
public int Partition(int arr[],int low,int high)
{
int temp=arr[(low+high)/2];
while(low<high)
{
while(low<high&&arr[high]>=temp)
--high;
arr[low]=arr[high];
while(low<high&&arr[low]<=temp)
++low;
arr[high]=arr[low];
}
arr[(low+high)/2]=temp;
return low;
}
}
作者:
抓哇
时间:
2012-3-28 10:36
本帖最后由 抓哇 于 2012-3-28 10:41 编辑
关于排序算法头都晕了 基本排序有选择 冒泡 插入
高级排序有归并排序 希尔排序 快速排序 基数排序。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2