今天介绍一个有趣的第三方模块——algorithms,它提供用Python实现的一些算法和数据结构及其操作,不是简单的基本操作哦。比如各种排序算法。主要目的是用来学习哈,不是生产和工作。
若想知道模块中方法的源码可以在官网查阅,上面有详细的介绍,包括算法性能等:
https://algorithms.readthedocs.io/en/latest/index.html
模块安装方法:
pip install algorithms
或 pip3 install algorithms #python3.x
该模块包括如下子模块,可以看到涵盖了如下各种数据结构和相关算法:
arrays
backtrack
bit
graph
heap
linkedlist
maths
queues
search
sort
stack
strings
注意在使用某子模块中的方法时,需要直接的引入该子模块,不能仅导入algorithms模块或from algorithms import *
,比如使用maths模块时,需要如下操作:
from algorithms import maths
这里以sort子模块具体举例:
sort
sort子模块的各种方法,大家看到名字也差不多知道是什么算法了吧,但是因为方法是返回输出后的结果,所以不能直接看出不同排序算法的区别,可以上官网查阅源码或者通过计时等方法测试比较一下哦。
bogo_sort #猴子排序(恶搞的^_^)
bubble_sort #冒泡排序
bucket_sort #桶排序
cocktail_shaker_sort #鸡尾酒排序、双向冒泡排序
comb_sort