你“听”过这些经典排序算法吗?

算法是编程知识体系中的重要部分。当你已经掌握了一些编程基础以后,必然须要了解算法相关的知识,才能能够写出效率更高的代码。而排序算法又是算法中很是基础的内容。git

咱们用 Python 实现了一个可视(听)化的排序算法演示程序,给大家直观地展现一下 冒泡排序、选择排序、插入排序、快速排序、归并排序5种经典排序算法的执行过程。github

记得打开你的声音,片尾有小彩蛋😁算法

https://www.zhihu.com/video/984780622191030272

此程序的想法来源于一个国外视频:编程

6分钟演示15种排序算法_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili框架

主体代码和可视化部分由 @Provin.M 实现,我在其基础上增长了音效。ide

可视化部分经过著名的 Python 图表库 matplotlib 中的 animation 实现。音效则是使用了 pyaudio 库。post

这几种都是经典的排序算法,关于其实现及算法复杂度的讨论在几乎每一本算法书籍上都有说起,网上直接搜索一下也能够找出无数文章,所以本篇中再也不一一赘述。若是你们对算法感兴趣,能够在留言区说下,以后也会考虑写一些算法方面的内容。区块链


代码已上传 github。若是你对排序算法还不熟悉,能够尝试修改下代码里的排序数据、执行速度等参数,观察不一样排序算法的过程和效率,以便于对这些排序算法的理解。而若是你已经对算法有必定了解,则能够考虑在此框架上增长更多的算法演示。人工智能

获取代码,请在公众号 Crossin的编程教室 里回复关键字:排序url


════
其余文章及回答:

如何自学Python | 新手引导 | 精选Python问答 | Python单词表 | 区块链 | 人工智能 | 双11 | 嘻哈 | 爬虫

欢迎搜索及关注:Crossin的编程教室

相关文章
相关标签/搜索