快速排序
来源:互联网 发布:贸易条件指数 优化 编辑:程序博客网 时间:2024/05/16 08:34
题目:基于数组的快速排序
思路:
(1)选择一个枢纽结点,之后将数组中的元素进行划分,使所有小于枢纽结点的数放到前面,大于枢纽结点的数放到后面
(2)递归的对前面一部分和后面一部分再进行划分,直到所有结点都有序为止
代码:
#include <iostream>using namespace std;//用待排数组的第一个元素为枢纽结点进行划分int Patition(int* arr,int start,int end){int pivotkey = arr[start];while (start < end){while (start < end && arr[end] >= pivotkey){end--;}arr[start] = arr[end];while (start < end && arr[start] <= pivotkey){start++;}arr[end] = arr[start];}arr[start] = pivotkey;return start;}void QuickSort(int* arr,int start,int end){int pivotloc;if (start < end){pivotloc = Patition(arr,start,end);QuickSort(arr,start,pivotloc-1);QuickSort(arr,pivotloc+1,end);}}int main(){int nlen;cout<<"input array elem number:";cin>>nlen;int* arr = new int[nlen];cout<<"input elem:"<<endl;for (int i = 0; i < nlen; ++i){cin>>arr[i];}QuickSort(arr,0,nlen-1);delete[] arr;arr = NULL;}
0 0
- 快速排序
- 快速排序
- 快速排序
- 快速排序!
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 快速排序
- 利用JDOM對XML文件的解析
- 手机内存数据丢失应该怎么恢复
- IT行业紧缺职位引领高薪行情
- [009]微信公众帐号开发教程第9篇-QQ表情的发送与接收
- CDC *pDC=GetDC();具体是什么意思?
- 快速排序
- EditPlus乱码问题解决(windows下)
- tcp/ip模型背后的内涵(一)
- 关于cocos2dx下,图片数据的操作
- JAVA并发性和多线程学习笔记-概念知识
- android 底部菜单
- ios7 修改navigationController返回按钮颜色和文字
- 新人请谅解
- 页面中调用函数--之${fn:}内置函数