MIT的课程,今天实现了个快速排序,开始的时候理解错了,晕死
这个代码写起来挺快的,而且速度也是排序里面算是很快很快的了,所以叫做快速排序么:
快速排序(Quicksort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
#include <iostream>
using namespace std;
int a[10] = {32, 21, 67, 11, 5, 43, 99, 18, 22, 87};
void quickSort(int p, int q)
{
if(p < q)
{
int x = a[p];
int i = p;
for(int j = p+1; j < q; j++)
{
if(a[j] < x)
{
i++;
int temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
int temp = a[p];
a[p] = a[i];
a[i] = temp;
quickSort(p, i);
quickSort(i+1, q);
}
}
int main()
{
quickSort(0, 10);
for(int i = 0; i < 10; i++)
{
cout << a[i] << " ";
}
cout << endl;
}
个人感觉网上的代码没有我写的那么容易理解吧,嘿嘿,得到大师真传,自信一下~~
分享到:
相关推荐
Verilog/C++实现排序算法:Verilog/C++实现排序算法:冒泡排序、选择排序、并行全比较排序、串行全比较排序。
算法导论C++实现代码算法导论C++实现代码算法导论C++实现代码算法导论C++实现代码算法导论C++实现代码算法导论C++实现代码算法导论C++实现代码算法导论C++实现代码算法导论C++实现代码
2、熟练使用高级编程语言实现不同的快速排序算法。 3、利用实验测试给出不同快速排序算法的性能以理解其优缺点。 快速排序是算法导论中的经典算法。在本实验中,给定一个长为 n 的整数数 组,要求将数组升序排序。
快速排序算法c++实现,快速实现插入排序十万个数(调用)。可以改成输入。并附加了程序运行计时,用于测试时间复杂度,可以移除。绝对能用
算法导论大作业:股票买卖最佳时期系列问题 南开大学 算法导论源码算法导论大作业:股票买卖最佳时期系列问题 南开大学 算法导论源码算法导论大作业:股票买卖最佳时期系列问题 南开大学 算法导论源码算法导论大作业...
请参考算法导论第三版英文版Introduction to Algorithms 3rd Edition,本程序为第一章到第八章重要排序等算法的c/c++实现。IDE环境为vc++ 6.0。函数名称与算法导论原文类似。 主要包括: 直接选择排序 归并排序 堆...
《算法设计、分析与实现:c、c++和java》特色是按照算法之间逻辑关系编排学习顺序,并对每一个经典算法,都给出了完整的c/c++/java三种主流编程语言的实现程序,是一本既能让读者清晰、轻松地理解算法思想,又能让...
算法导论用C++实现代码算法导论用C++实现代码算法导论用C++实现代码算法导论用C++实现代码
简单的堆排序算法:以定长数组为例,动态数组等可以以此类推
用C++语言实现的几个常见算法,里面有注解,方便大家理解,简单易学,都可以正常编译运行。
用c++实现的快速排序算法 算法实现的简单易懂
作为一本算法实现的书籍,本书严格遵循软件开发原则,详细描述了设计思想及错误处理方法,并对所有函数进行了广泛测试。 本书可以作为高等院校信息技术相关专业高年级本科生或研究生的教材,也是信息技术从业人员...
算法导论上的堆排序c++源程序||学习分享
C++实现希尔、快速、堆排序、归并排序算法,一些中文注释可能成乱码了,但是不影响代码执行。
所有代码都是在我学习这本书时亲手敲出来的,并且调试正确了,包括:第三部分到第六部分(即10-26章),外加第七部分31和32章所有的算法和数据结构以及编程习题还有思考题的C++实现源代码; 第一、二部分学习的较早...
三种排序算法(直接插入、冒泡、快速)的C++实现。有讲解
自己写的用C++实现的快速排序算法,运行通过,可以作为参考。
全面的排序算法实现,包括插入排序、合并排序、堆排序、快速排序。 堆排序:HeapSort 讲解详见http://blog.csdn.net/fly_yr/article/details/8550701 插入排序:InSertion_Sort 讲解详见...
毕业设计:基于C++的AP聚类算法设计与实现 毕业设计:基于C++的AP聚类算法设计与实现 毕业设计:基于C++的AP聚类算法设计与实现 毕业设计:基于C++的AP聚类算法设计与实现 毕业设计:基于C++的AP聚类算法设计与实现 ...