用JAVA实现排序算法之四:快速排序
来源:互联网 发布:anaconda与python 编辑:程序博客网 时间:2024/05/17 06:25
本篇文章介绍快速排序算法的JAVA实现。
快速排序算法的基本思想是:设当前待排序的无序区为R[low..high],利用分治法可将快速排序的基本思想描述为:
①分解:在R[low..high]中任选一个记录作为基准(Pivot),以此基准将当前无序区划分为左、右两个较小的子区间R[low..pivotpos-1)和R[pivotpos+1..high],并使左边子区间中所有记录的关键字均小于等于基准记录(不妨记为pivot)的关键字pivot.key,右边的子区间中所有记录的关键字均大于等于pivot.key,而基准记录pivot则位于正确的位置(pivotpos)上,它无须参加后续的排序。
注意:划分的关键是要求出基准记录所在的位置pivotpos。划分的结果可以简单地表示为(注意pivot=R[pivotpos]):R[low..pivotpos-1].keys≤R[pivotpos].key≤R[pivotpos+1..high].keys 其中low≤pivotpos≤high。
②求解:通过递归调用快速排序对左、右子区间R[low..pivotpos-1]和R[pivotpos+1..high]快速排序。
③组合:因为当"求解"步骤中的两个递归调用结束时,其左、右两个子区间已有序。对快速排序而言,"组合"步骤无须做什么,可看作是空操作。
以下是快速排序算法的JAVA代码实现:
- 用JAVA实现排序算法之四:快速排序
- Java实现排序算法之快速排序
- 排序算法之快速排序 Java实现
- 排序算法之快速排序java实现
- 算法之快速排序----------用Java实现
- java 排序算法实现 其四:快速排序
- 排序算法之快速排序、归并排序(java实现)
- 快速排序算法之JAVA实现
- 算法学习之java实现快速排序
- Java实现算法之快速排序
- 算法实现Java之快速排序
- Java算法实现之快速排序
- Java排序算法(四):快速排序
- Java实现-高效排序算法之快速排序
- 排序算法之快速排序的思想以及Java实现
- 排序算法之——快速排序(Java实现)
- 排序算法之——快速排序(Java实现)
- 排序算法之快速排序法(Java实现)
- jxl的API
- JDK ObjectOutputStream的 “内存泄漏” 问题
- ssh整合开发中的分页方案(Srtuts2+Spring+Hibernate)
- mysql使用存储过程循环插入数据
- viso
- 用JAVA实现排序算法之四:快速排序
- “0d 0a”这两个字符是什么涵义
- CCNA实验二十五 实战多种ACL访问控制
- 企业核心竞争力和领先优势
- 人工智能
- SQL Server修改表结构后批量更新所有视图的存储过程
- MYSQL 主从库同步 异常处理汇总
- 带两位小数的正则表达式
- 工程师的核心竞争力