python快排算法详解

 更新时间:2019年03月04日 10:32:39   投稿:laozhang  
在本篇内容里小编给大家整理了关于python快排算法的相关知识点内基础内容,需要的朋友们学习下。

快排是python经典算法之一。

1、下面讲解的是什么是快排和快排的图示。

2、快排是一种解决排序问题的运算方法。

3、快排的原理:在数组中任意选择一个数字作为基准,用数组的数据和基准数据进行比较,比基准数字打的数字的基准数字的右边,比基准数字小的数字在基准数字的左边,

第一次排序之后分为比基准数据大或比基准数据小两个部分,用刚开始的方法继续排序,直到每个排序分组中只有一个数据或没有数据为止。

4、下面以[ 7 91 23 1 6 3 79 2 ]数组为例子,进行快排运算。

5、选基准:选择数组里的第一个数字(可以选择任意数字)为基准数字

6、从j指针开始和基准数据比较之后,其中2比7小,所以将2排到7的左边。此时进行了交叉移动,所以下一个比较的是i指针对应的数据。

7、i指针与基准数据7比较,其中91比7大,所以将91排到右边,此时又一次进行了交叉移动,所以下一个比较的是j指针对应的数据。

8、j指针与基准数据7比较,其中79比7大,所以将79排到右边,此时是同侧移动,所以下一个比较的是j指针对应的数据。

9、j指针与基准数据7比较,其中3比7小,所以将3排到左边,此时又一次进行了交叉移动,所以下一个比较的是i指针对应的数据。

10、i指针与基准数据7比较,其中23比7大,所以将23排到右边,此时又一次进行了交叉移动,所以下一个比较的是j指针对应的数据。

11、j指针与基准数据7比较,其中6比7小,所以将6排到左边,此时又一次进行了交叉移动,所以下一个比较的是i指针对应的数据。

12、i指针与基准数据7比较,其中1比7小,所以将1排到右边,此时所有的数据都进行了一次排序。

13、第一趟排序之后的结果如下。根据上面的方法,基准数据的左右两侧继续快排,直到数组没有数据或数组数据为0

14、最后的排序结果如下图所示:

相关文章

  • pycharm永久激活超详细教程

    pycharm永久激活超详细教程

    这篇文章主要介绍了pycharm永久激活超详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • python数组如何添加整行或整列

    python数组如何添加整行或整列

    这篇文章主要介绍了python数组如何添加整行或整列问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • Python变量类型知识点总结

    Python变量类型知识点总结

    在本文里我们给大家分析一篇关于Python变量类型的相关知识点内容,需要的朋友们跟着学习下。
    2019-02-02
  • 通过Python 接口使用OpenCV的方法

    通过Python 接口使用OpenCV的方法

    下面小编就为大家分享一篇通过Python 接口使用OpenCV的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • OpenCV半小时掌握基本操作之SIFT算法

    OpenCV半小时掌握基本操作之SIFT算法

    这篇文章主要介绍了OpenCV基本操作之SIFT算法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • Python实现简单石头剪刀布游戏

    Python实现简单石头剪刀布游戏

    这篇文章主要为大家详细介绍了Python实现简单的石头剪刀布的游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-01-01
  • Python经典题实战记录之百元买百鸡

    Python经典题实战记录之百元买百鸡

    有一道著名的"百钱买百鸡"问题大家应该都不陌生,这篇文章主要给大家介绍了关于Python经典题实战记录之百元买百鸡的相关资料,文中给出了详细的代码示例,需要的朋友可以参考下
    2023-12-12
  • python实现每次处理一个字符的三种方法

    python实现每次处理一个字符的三种方法

    这篇文章主要介绍了python实现每次处理一个字符的三种方法,是非常实用的字符串操作技巧,需要的朋友可以参考下
    2014-10-10
  • python实现按日期归档文件

    python实现按日期归档文件

    这篇文章主要介绍了python实现如何按日期归档文件,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2021-01-01
  • pycharm 实现光标快速移动到括号外或行尾的操作

    pycharm 实现光标快速移动到括号外或行尾的操作

    这篇文章主要介绍了pycharm 实现光标快速移动到括号外或行尾的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02

最新评论