快速排序算法_C++
来源:互联网 发布:购买已备案域名可靠吗 编辑:程序博客网 时间:2024/05/23 15:41
快速排序使用分治的方法,把数列按基准为界,分为左小右大两个子数列。然后按递归的思路,对两个子数列再进行快速排序,最终把整个数列有序排列。
#include <iostream>using namespace std;template<class T>void exchange(T arr[], int i, int j){T temp = arr[i];arr[i] = arr[j];arr[j] = temp;};template<class T>void quick_sort(T arr[], int left, int right){if (left >= right){return;}int i = left, j = right;T key = arr[left];while(i < j){while(i < j && arr[j] >= key)j--;while(i < j && arr[i] <= key)i++;if (i < j){exchange(arr, i, j);}}exchange(arr, left, i);quick_sort(arr, left, i - 1);quick_sort(arr, j + 1, right);}void main(){int arr[11] = {56,123,75,8,23,56, 96,12,34,3,45};quick_sort(arr,0,10);for(int i = 0;i < 10;i++)cout<<arr[i]<<" ";cout<<endl;double arr1[4] = {3.14, 8.7, 1.2, 3.5};quick_sort(arr1,0,3);for(int i = 0;i < 3;i++)cout<<arr1[i]<<" ";}
0 0
- 快速排序算法_C++
- 快速排序_C
- 快速排序实现_c++
- 快速排序实现_c++
- 快速排序_C语言
- 快速排序(QuickSort)_C语言版
- 排序算法_C++11的实现
- 排序算法_C++11的实现
- 八大排序算法_C++实现及对比
- 排序算法_C++(三)插入排序之希尔排序
- 排序算法_C++(四)交换排序之冒泡排序
- 排序算法--快速排序
- 排序算法--快速排序
- 排序算法---快速排序
- 排序算法-快速排序
- 排序算法------快速排序
- 排序算法---快速排序
- 排序算法-快速排序
- apacheBench对网站进行压力测试
- UF超滤膜组件水处理应用前景与优势浅析
- Linux系统信息查看命令大全
- Fedora linux下eclipse无法真机调试总结
- JDK1.5/1.6/1.7之新特性总结
- 快速排序算法_C++
- 市委组织部项目--word上传,下载,预览,删除
- [转载]hadoop datanode 节点重启步骤
- 反映关键词排名的站内优化要素
- plain类型tableview的footview不能跟随tableview下滑
- 【Android界面实现】SlidingMenu实现侧滑栏效果
- datasafe需求添加:
- 突破12306自动刷新时间限制
- Window_Open详解