python排序的方法实例总结

 更新时间:2021年04月30日 08:25:30   作者:小妮浅浅  
在本篇文章里小编给大家整理的是一篇关于python排序的方法实例总结内容,有兴趣的朋友们可以学习下。

1、冒泡排序

它反复访问要排序的元素列,并依次比较两个相邻的元素。如果顺序(如从大到小)错了,就交换它们。访问元素的工作是反复进行,直到没有相邻元素需要交换,也就是说元素列已经排序完成。

2、选择排序

首次从待排序的数据元素中选择最小(或最大)的元素,存储在序列的开始位置,然后从剩余的未排序元素中找到最小(大)元素,然后放在已排序的末尾。直到所有元素都被排序。

3、插入排序

对于未排序的数据,通过构建有序的序列,在已排序的序列中从后向前扫描,找到相应的位置并插入。插入式排序在实现上,在从后向前扫描的过程中,需要反复将已排序的元素逐步向后移动,为最新的元素提供插入空间。

4、快速排序

将要排序的数据通过一次排序分成两个独立的部分,其中一个部分的所有数据都小于另一个部分的所有数据,然后按照这种方法对这两个部分的数据进行快速排序,整个排序过程可以递归进行,从而使整个数据成为有序的序列。

5、希尔排序(插入排序改进版)

首先,将要排序的一组数量按某个增量d分为几个组,每组中记录的下标相差d,对每组中的所有元素进行排序,然后用较小的增量对其进行分组,然后对每组进行排序。当增量减少到1时,整个要排序的数量被分成一组,排序完成。

6、归并排序

首先递归分解组,然后合并组。基本思路是比较两个数组的面的数字,谁小就先取谁,取后相应的指针向后移动一个。然后再比较,直到一个数组是空的,最后复制另一个数组的剩余部分。

实例扩展:

>>> data1=[4,2,6,432,78,43,22,896,42,677,12]
>>> data1.sort()
>>> data1       #原来的顺序被替换
[2, 4, 6, 12, 22, 42, 43, 78, 432, 677, 896]
>>> data1=[4,2,6,432,78,43,22,896,42,677,12]
>>> data2=sorted(data1)
>>> data1     
[4, 2, 6, 432, 78, 43, 22, 896, 42, 677, 12]    #原顺序保留
>>> data2    
[2, 4, 6, 12, 22, 42, 43, 78, 432, 677, 896]    #对副本排序
>>>

到此这篇关于python排序的方法实例总结的文章就介绍到这了,更多相关python有几种排序的方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一篇文章读懂Python赋值与拷贝

    一篇文章读懂Python赋值与拷贝

    本文给大家分享一篇文章带领大家读懂python赋值与拷贝的知识,感兴趣的朋友一起看看吧
    2018-04-04
  • 如何用Python绘制简易动态圣诞树

    如何用Python绘制简易动态圣诞树

    这篇文章主要给大家介绍了关于如何用Python绘制简易动态圣诞树,文中讲解了如何通过编写代码来实现特定的效果,包括代码的编写技巧和效果的展示,需要的朋友可以参考下
    2025-01-01
  • pandas数据合并之pd.concat()用法详解

    pandas数据合并之pd.concat()用法详解

    本文主要介绍了pandas数据合并之pd.concat()用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • Python实现正则表达式匹配任意的邮箱方法

    Python实现正则表达式匹配任意的邮箱方法

    今天小编就为大家分享一篇Python实现正则表达式匹配任意的邮箱方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • matplotlib图例legend语法及设置的方法

    matplotlib图例legend语法及设置的方法

    这篇文章主要介绍了matplotlib图例legend语法及设置的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • python代码实现五子棋游戏

    python代码实现五子棋游戏

    这篇文章主要为大家详细介绍了python代码实现五子棋游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • python3的pip路径在哪

    python3的pip路径在哪

    在本篇文章里小编给大家分享的是关于python3中pip路径位置的相关文章,有兴趣的朋友们学习下吧。
    2020-06-06
  • pandas如何读取含有中文的excel

    pandas如何读取含有中文的excel

    这篇文章主要介绍了pandas如何读取含有中文的excel问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • python判断链表是否有环的实例代码

    python判断链表是否有环的实例代码

    在本篇文章里小编给大家整理的是关于python判断链表是否有环的知识点及实例代码,需要的朋友们参考下。
    2020-01-01
  • python实现查找所有程序的安装信息

    python实现查找所有程序的安装信息

    本文给大家分享的是使用python通过注册表信息实现快速查找windows应用程序的安装信息的方法和代码示例,有需要的小伙伴可以参考下
    2020-02-02

最新评论