品易云推流 关闭
文章详情页
文章 > Python基础教程 > python希尔排序算法是什么?

python希尔排序算法是什么?

头像

十一

2020-11-26 17:08:142433浏览 · 0收藏 · 0评论

如果大家对排序算法有了解的话,那么上手这个这块儿内容就不是很难,为什么要这么说呢?这算是排序的升级版,升级的主要内容,就是比前者更加稳定,因此,有不少人说希尔也叫稳定排序算法,但是它本身也是有自身独特魅力的,比如效率高,就是其他算法不可比拟的,在语言上尤其讲效率,那么大家来上手学习下吧。

开篇已经说了,跟插入算法有点类似,因此它的算法步骤如下:

1、有序列对趟排序

2、每一个序列化用表,表的长度等于序列长度

相关代码演示:

def shellSort(arr):
    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)
    return arr
}

大家都看懂了吗?因为插入算法很好理解,所以希尔算法的内容并不难,大家在学习的时候,完全可以当成是插入算法进行带入学习,还是非常好理解的哦~更多学习内容,尽在python学习网

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图