快速排序
来源:互联网 发布:js 复选框控制display 编辑:程序博客网 时间:2024/05/22 00:25
快速排序,说起来很简单那,这几天突然想来练练笔,结果,两个字,失败。
快速排序(Quicksort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
具体可以参考http://baike.baidu.com/view/19016.htm?from_id=2084344&type=syn&fromtitle=快速排序&fr=aladdin
上述参考地址也是里有各种代码,我只是把c++的代码拷贝过来了,哈哈
/* 从小到大排序*/void Qsort(int a[],int low,int high){if(low >= high){return;}int first = low;int last = high;int key = a[first];/*用字表的第一个记录作为枢轴*/while(first < last){while(first < last && a[last] >= key)--last;a[first] = a[last];/*将比第一个小的移到低端*/while(first < last && a[first] <= key)++first;a[last] = a[first];/*将比第一个大的移到高端*/}a[first] = key;/*枢轴记录到位*/Qsort(a, low, first-1);Qsort(a, last+1, high);/*这里first和last应该相等的,所以应该可以用first*/}
拷贝过来的目的很简单啊,就是为了某天要用的时候直接翻自己这里就可以了。
0 0
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- CSDN博文“待审核”检测规则分析之如何避免“待审核”
- 对android中ActionBar中setDisplayHomeAsUpEnabled和setHomeButtonEnabled和setDisplayShowHomeEnabled方法的理解
- Interpolator 的解释
- 基于ultimus平台的项目管理解决方案
- Android 通过广播来异步更新UI
- 快速排序
- Android 动画原理
- vim 去除 ^M
- redhat and centos 系统常用命令
- win7、ubuntu双系统下安全删除ubuntu
- Eclipse——快捷键&Help
- 轻松搞定面试中的链表题目
- 河南教育国际交流学院招生简章
- 2014秋C++第5周项目2参考-简单计算问题体验