优草派  >   Python

Python经典算法有哪些?Python经典算法推荐

罗西汉            来源:优草派

学习python不仅仅只能学习python的知识,还要知道如何通过构建算法来提高程序的执行效率。那么算法就是根据时间和空间来判断程序效率高低的一种方法,好的算法能够极大地提高程序运行速度,那么下面这篇文章就会介绍几个python经典的算法,一起看看吧。

Python经典算法有哪些?Python经典算法推荐

一、希尔排序

希尔排序是插入排序的一个改进版本,和插入排序相比它更加高效。但是它是不稳定的排序算法,所以又被称之为递减增量排序算法。它的具体实现思路是将整个序列线分割成指定长度的多个子序列然后进行插入排序,再进行过几次排序之中就对所有的序列依次执行插入排序,示例如下:

arr = [1,2,8,34,8,6,1,97,26]
    import math
    gap=1
    while(gap < len(arr)/3):
        gap = gap*3+1
    while gap > 0:
        for i in range(gap,len(arr)):
            temp = arr[i]
            j = i-gap
            while j >=0 and arr[j] > temp:
                arr[j+gap]=arr[j]
                j-=gap
            arr[j+gap] = temp
        gap = math.floor(gap/3)

二、选择排序

在众多经典算法之中选择排序可以说是最为简单直观的一个排序算法了,因为它的时间复杂度是固定的,所有当数据越小时执行的效率就越高。实现思路为在序列左侧找到最大或最小的一个放在开头,然后从所有的元素中找到最大或最小的一个元素放在序列的末尾,具体的实现过程如下所示:

arr = [1,2,8,34,8,6,1,97,26]
    for i in range(len(arr) - 1):
        minIndex = i
        for j in range(i + 1, len(arr)):
            if arr[j] < arr[minIndex]:
                minIndex = j
        if i != minIndex:
            arr[i], arr[minIndex] = arr[minIndex], arr[i]

以上就是关于“Python经典算法有哪些?Python经典算法推荐”的全部内容了,想要了解更多python的实用知识和代码示例可以在网页顶部栏目中找到python查看更多哦。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行