C++ 快速排序 递归实现
来源:互联网 发布:在淘宝卖鞋需要多少钱 编辑:程序博客网 时间:2024/06/05 16:25
在各排序算法中,由C.A.R.Hoare提出的快速排序方法的平均时间性能最好,在插入排序中,根据已排序的字文件,把控制当前插入操作的关键字K放到正确的位置上。与插入排序不同的是,快速排序根据整个文件,把控制当前排序进程的基准关键字放到正确的位置上。在快速排序中,如果把关键字k防止在位置s(i)处,那么,当j<s(i)时,则有Kj<K(si)
,而当j〉s(j)时,则有Kj>k(si),因此当把关键字放在S(i)处时,原来的一个文件被分为两个文件。可以对这两个子文件进行独立的相同原理的排序
#include "stdafx.h"
#include<iostream>
using namespace std;
void QuickSort(int list[],int left,int right)
{
int key=list[left];
int i=left;
int j=right+1;
if(left<right)
{
do{
do{
i++;
}while(list[i]<key);
do{
j--;
}while(list[j]>key);
if(i<j)
{
int temp=list[i];
list[i]=list[j];
list[j]=temp;
}
}while(i<j);
int tem=list[left];
list[left]=list[j];
list[j]=tem;
QuickSort(list,left,j-1);
QuickSort(list,j+1,right);
}
}
int main()
{
int list[]={5,8,6,2,9,10};
QuickSort(list,0,5);
for(int i=0;i<6;i++)
{
cout<<list[i]<<" ";
}
}
- 递归C 快速排序
- 递归实现快速排序
- 快速排序+递归实现
- 递归实现快速排序
- 快速排序--递归实现
- 递归实现快速排序
- 快速排序C语言实现(递归)和希尔排序
- C语言的快速排序算法代码-递归实现
- 快速排序c语言递归和栈实现
- 《c程序设计语言》读书笔记-递归实现快速排序算法
- 快速排序的递归实现
- 快速排序的递归实现
- 快速排序非递归实现
- 快速排序非递归实现
- 快速排序的递归实现
- 快速排序非递归实现
- java 递归实现快速排序
- 非递归实现快速排序
- 腾讯投资策略改变背后:耐心不再
- 第2周项目3文件+结构体实现应用
- Java中的String与常量池
- OpenCV 关于保存图片
- JQuery文件浏览器插件使用示例
- C++ 快速排序 递归实现
- jvm调优
- 表单集调用问题
- java线程(1)
- 第三周项目3-掌握有对象的程序结构
- jquery添加删除表格行
- 2014-03-11项目1掌握对象
- 在保全tiny6410功能的前提下运行自己的Qt4程序(上)
- linux磁盘管理