快速排序三种
来源:互联网 发布:数据库系统概论第五版 编辑:程序博客网 时间:2024/06/05 07:20
package xiaozhao;
public class Quick {
//百度百科
//实现一
public void sort(int arr[],int low,int high)
{
int l=low;
int h=high;
int povit=arr[low];
while(l<h)
{
while(l<h&&arr[h]>=povit)
h--;
if(l<h)
{
int temp=arr[h];
arr[h]=arr[l];
arr[l]=temp;
l++;
}
while(l<h&&arr[l]<=povit)
l++;
if(l<h)
{
int temp=arr[h];
arr[h]=arr[l];
arr[l]=temp;
h--;
}
}
System.out.println(arr);
System.out.println("l="+(l+1)+"h="+(h+1)+"povit"+povit);
if(l>low)
sort(arr,low,l-1);
if(h<high)
sort(arr,l+1,high);
}
//实现二
public <T extends Comparable<?super T>> T[] quickSort(T[] targetArr,int start,int end)
{
int i=start+1;
int j=end;
T key=targetArr[start];
SortUtil<T> sUtil=new SortUtil<T>();
return targetArr;
}
//实现二
}
public class Quick {
//百度百科
//实现一
public void sort(int arr[],int low,int high)
{
int l=low;
int h=high;
int povit=arr[low];
while(l<h)
{
while(l<h&&arr[h]>=povit)
h--;
if(l<h)
{
int temp=arr[h];
arr[h]=arr[l];
arr[l]=temp;
l++;
}
while(l<h&&arr[l]<=povit)
l++;
if(l<h)
{
int temp=arr[h];
arr[h]=arr[l];
arr[l]=temp;
h--;
}
}
System.out.println(arr);
System.out.println("l="+(l+1)+"h="+(h+1)+"povit"+povit);
if(l>low)
sort(arr,low,l-1);
if(h<high)
sort(arr,l+1,high);
}
//实现二
public <T extends Comparable<?super T>> T[] quickSort(T[] targetArr,int start,int end)
{
int i=start+1;
int j=end;
T key=targetArr[start];
SortUtil<T> sUtil=new SortUtil<T>();
return targetArr;
}
//实现二
}
阅读全文
0 0
- 快速排序三种
- 三种快速排序法
- 三种基本排序算法+快速排序
- 三种排序算法(归并排序、快速排序,堆排序)
- 其他三种排序:堆排序,归并排序,快速排序
- 三种快速排序以及快速排序的优化
- 三种快速排序以及快速排序的优化
- 三种快速排序以及快速排序的优化
- 三种快速排序算法以及快速排序的优化
- 三种快速排序算法以及快速排序的优化
- 三种快速排序以及快速排序的优化
- 三种快速排序算法以及快速排序的优化
- 三种快速排序以及快速排序的优化
- 三种快速排序以及快速排序的优化
- 三种快速排序以及快速排序的优化
- 三种快速排序算法以及快速排序的优化
- 三种快速排序以及快速排序的优化
- 三种快速排序算法以及快速排序的优化
- 17_if语句_单选择_双选择_多选择结构
- linux兴趣小组2017面试题浅析
- java:简单电话簿
- 哈夫曼编码(Huffman Coding) cpp完整代码实现 详细注释 ASCII码表
- iOS UIButton选中状态下点击高亮
- 快速排序三种
- Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were
- linux的历史
- 文章标题
- 【Java】 之 Date、Calendar
- CMake入门笔记
- 如何在ASP.NET的web.config配置文件中添加MIME类型
- DAY10 NFS 计划任务 shell
- Golang 在 Mac、Linux、Windows 下如何交叉编译 --- 作者:磐石区