快速排序算法
2016-03-01 16:43
309 查看
要点是如何把数组中大于key的都放它后面,小于他的都放它前面。
private static int sort(int[] A, int low, int high) {
// TODO Auto-generated method stub
int key = A[low];
int i = low;
int j = high;
if (low < high) {
//两端下标i,j向中间靠拢
while (i < j) {
while (i < j && key <= A[j]) {
j--;
}
if (i < j) {
A[i] = A[j];
}
while (i < j && A[i] <= key) {
i++;
}
if (i < j) {
A[j] = A[i];
}
}
A[i] = key;
}
return i;
}
}
private static int sort(int[] A, int low, int high) {
// TODO Auto-generated method stub
int key = A[low];
int i = low;
int j = high;
if (low < high) {
//两端下标i,j向中间靠拢
while (i < j) {
while (i < j && key <= A[j]) {
j--;
}
if (i < j) {
A[i] = A[j];
}
while (i < j && A[i] <= key) {
i++;
}
if (i < j) {
A[j] = A[i];
}
}
A[i] = key;
}
return i;
}
}
相关文章推荐
- C++第15周(春)项目3 - OOP版电子词典(一)
- react-router 0.X web 使用
- jQuery插件:跨浏览器复制jQuery-zclip
- ListView小知识点总结
- Node.js的MongoDB驱动Mongoose基本使用教程
- 面向对象方式使用数据库---CoreData的基本使用
- IOS多线程及队列的使用
- 15版集中器模块无线监听方法
- iOS中常用到的全局变量
- Oracle JDeveloper 11g (11.1.2.3.0)下载地址
- SPOJ 16549 QTREE6 - Query on a tree VI
- C++ Primer 学习笔记——动态内存与智能指针(1)
- springMVC中上传文件
- LeetCode 36 - Valid Sudoku
- Android 日常开发总结的技术经验 60 条
- 获取Android手机短信中心号码
- 浏览器JS文件缓存问题
- POJ 1016 Numbers That Count(水~)
- 字符串x2+些许作业
- 我的软件工程课目标