LintCode 463.整数排序 II [快速排序基础应用]
来源:互联网 发布:python 接收上传图片 编辑:程序博客网 时间:2024/06/05 18:58
题目链接
http://www.lintcode.com/zh-cn/problem/sort-integers-ii/
给一组整数,按照升序排序。使用归并排序,快速排序,堆排序或者任何其他 O(n log n) 的排序算法。
给出 [3, 2, 1, 4, 5]
, 排序后的结果为 [1, 2, 3, 4, 5]
。
class Solution {public: /** * @param A an integer array * @return void */ void quick_sort(vector<int>& s, int low, int high){ if (low < high) { int i = low, j = high, x = s[low]; while (i < j) { while(i < j&&s[j] >= x) // 从右向左找第一个小于x的数 j--;s[i] = s[j];//i++;//此处的i++需要i<j判断 否则会出错 最好 不写if判断和i++//if(i < j) //s[i++] = s[j]; while(i < j&&s[i] <= x) // 从左向右找第一个大于等于x的数 i++; s[j] = s[i]; //j--; //此处同理上 //if(i < j) //s[j--] = s[i]; } s[i] = x;//或者 s[j] = x; quick_sort(s, low, i - 1); // 递归调用 quick_sort(s, i + 1, high); }} void sortIntegers2(vector<int>& A) { quick_sort(A,0,A.size()-1); // Write your code here }};有if判断的
//快速排序class Solution {public: /** * @param A an integer array * @return void */ void quick_sort(vector<int>& s, int low, int high){ if (low < high) { int i = low, j = high, x = s[low]; while (i < j) { while(i < j && s[j] >= x) // 从右向左找第一个小于x的数j--; if(i < j) s[i++] = s[j]; while(i < j && s[i] < x) // 从左向右找第一个大于等于x的数i++; if(i < j) s[j--] = s[i]; } s[i] = x;//或者 s[j] = x; quick_sort(s, low, i - 1); // 递归调用 quick_sort(s, i + 1, high); }} void sortIntegers2(vector<int>& A) { quick_sort(A,0,A.size()-1); // Write your code here }};
阅读全文
0 0
- LintCode 463.整数排序 II [快速排序基础应用]
- 【LintCode】整数排序II
- 整数排序II-lintcode
- LintCode-整数排序 II
- LintCode 整数排序 II
- 整数排序 II -LintCode
- lintcode 整数排序 II | 快速排序(Java)
- lintcode 463整数排序 lintcode 464整数排序II
- Lintcode——整数排序 II
- lintcode 整数排序 II | 归并排序(Java)
- LintCode:整数排序
- LintCode【入门】整数排序
- lintcode-入门-整数排序
- Lintcode 463 整数排序
- LintCode-整数排序
- 整数排序-LintCode
- LintCode 整数排序
- LintCode 整数排序
- 使用QT-QSerialport打不开串口的原因
- Struts2.x中实现文件上传功能
- unicode编码转中文处理
- 笔记9--CSS基础知识
- java 中的while循环
- LintCode 463.整数排序 II [快速排序基础应用]
- 常用的排序算法总结
- poj 1573 Robot Motion 模拟
- HDU1005
- Ubuntu安装navicat
- 单链表的插入,查找,删除
- rpm&&yum
- 把本地项目推送到github的命令
- 解决IDEA乱码问题