博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++:快速排序
阅读量:2085 次
发布时间:2019-04-29

本文共 454 字,大约阅读时间需要 1 分钟。

快速排序:

将其中一个值作为比较值,将数组中小于该值的元素放在左边,大于该值的元素放在右边,从头开始对每个元素进行这个操作,遍历完成排序完成。返回值为当前比较值元素的下标。
在这里插入图片描述

int hoare(T a[],int l,int h){
int i,j; T x; i = l; j= h; x.key = a[i].key; do {
//例如升序排列 当左边不满足小于x时,被放置到右边上次遍历到的元素,因为右边上次遍历到的元素不符合大于x而被跳出,这样左边元素覆盖过来就符合条件,并在当前方向继续遍历 while((i
=x.key)) {
j--; } if(i

递归调用

//递归调用排序算法template
void quicksort2(T a[],int l,int h){
int i ;if(l

转载地址:http://gisqf.baihongyu.com/

你可能感兴趣的文章
Spring源码剖析1:Spring概述
查看>>
Spring源码剖析2:初探Spring IOC核心流程
查看>>
Spring源码剖析5:JDK和cglib动态代理原理详解
查看>>
Spring源码剖析6:Spring AOP概述
查看>>
【Linux】进程的理解(二)
查看>>
【Linux】vim的简单配置
查看>>
笔记本怎么设置WIfi热点
查看>>
如何实现字符串的反转及替换?
查看>>
Java面试题全集(上)
查看>>
Java面试题全集(中)
查看>>
值传递和引用传递
查看>>
什么情况下用+运算符进行字符串连接比调用StringBuilder对象的append方法连接字符串性能更好?
查看>>
怎么根据Comparable方法中的compareTo方法的返回值的正负 判断升序 还是 降序?
查看>>
理解事务的4种隔离级别
查看>>
常用正则匹配符号
查看>>
建议42: 让工具类不可实例化
查看>>
Java 异步机制与同步机制的区别
查看>>
hibernate的对象三种状态说明
查看>>
什么是N+1查询?
查看>>
直插,快排,堆排,归并排序的分析
查看>>