Python pygorithm模块用法示例【常见算法测试】
本文实例讲述了Pythonpygorithm模块用法。分享给大家供大家参考,具体如下:
pygorithm:一个用纯粹python编写的Python模块,用于纯粹的教育目的。只需导入所需的算法即可获取代码,时间复杂度等等。开始学习Python编程的好方法。了解Python中所有主要算法的实现。不需要上网就可以获得所需的代码。
安装
pip3installpygorithm
常见函数
斐波那契数列
frompygorithm.fibonacciimportrecursion result=recursion.get_sequence(10) print(result)#[0,1,1,2,3,5,8,13,21,34,55] code=recursion.get_code()#获取实现函数的算法 print(code)
获取最小公倍数
frompygorithm.mathimportlcm result=lcm.lcm([4,6]) print(result)#12 code=lcm.get_code()#获取实现函数的算法 print(code)
质数算法
frompygorithm.mathimportsieve_of_eratosthenes result=sieve_of_eratosthenes.sieve_of_eratosthenes(10)#获取小于10的质数 print(result)#[2,3,5,7] code=lcm.get_code()#获取实现函数的算法 print(code)
阶乘
frompygorithm.mathimportfactorial result=factorial.factorial(5)#获取5的阶乘,即1*2*3*4*5 print(result)#120 code=factorial.get_code()#获取实现函数的算法 print(code)
十进制转二进制
frompygorithm.mathimportconversion result=conversion.decimal_to_binary(3)#将3转换为二进制 print(result)#11 code=conversion.get_code()#获取实现函数的算法 print(code)
二进制转十进制
frompygorithm.mathimportconversion result=conversion.binary_to_decimal(11)#将11转换为十进制 print(result)#3 code=conversion.get_code()#获取实现函数的算法 print(code)
十进制转十六进制
frompygorithm.mathimportconversion result=conversion.decimal_to_hex(15)#将15转换为十六进制数 print(result)#F code=conversion.get_code()#获取实现函数的算法 print(code)
十六进制转十进制
frompygorithm.mathimportconversion result=conversion.hex_to_decimal("F")#将十六进制F转化为十进制数 print(result)#15 code=conversion.get_code()#获取实现函数的算法 print(code)
二分法搜索:效率高
frompygorithm.searchingimportbinary_search l=[9,4,5,1,7] index=binary_search.search(l,5)#获取5在列表中的位置,找到返回下标,找不到返回False print(index) code=binary_search.get_code()#获取实现函数的算法 print(code)
线性搜索:速度慢,适用性广
frompygorithm.searchingimportlinear_search l=[9,4,5,1,7] index=linear_search.search(l,5)#获取5在列表中的位置,找到返回下标,找不到返回False print(index) code=linear_search.get_code()#获取实现函数的算法 print(code)
插值搜索:注意:列表必须先经过升序排序,否则将找不到
frompygorithm.searchingimportinterpolation_search l=[1,4,5,7,9] index=interpolation_search.search(l,4)#获取5在列表中的位置,找到返回下标,找不到返回False print(index) code=interpolation.get_code()#获取实现函数的算法 print(code)
冒泡排序
frompygorithm.sortingimportbubble_sort l=[9,4,5,1,7] result=bubble_sort.sort(l) print(result)#[1,4,5,7,9] code=bubble_sort.get_code()#获取实现函数的算法 print(code)
改良冒泡排序
frompygorithm.sortingimportbubble_sort l=[9,4,5,1,7] result=bubble_sort.improved_sort(l) print(result)#[1,4,5,7,9]
桶排序
frompygorithm.sortingimportbucket_sort l=[9,4,5,1,7] result=bucket_sort.sort(l,5)#5为桶的大小,默认为5 print(result)#[1,4,5,7,9] code=bucket_sort.get_code()#获取实现函数的算法 print(code)
计数排序
frompygorithm.sortingimportcounting_sort l=[9,4,5,1,7] result=counting_sort.sort(l) print(result)#[1,4,5,7,9] code=counting_sort.get_code()#获取实现函数的算法 print(code)
堆排序
frompygorithm.sortingimportheap_sort l=[9,4,5,1,7] result=heap_sort.sort(l) print(result)#[1,4,5,7,9] code=heap_sort.get_code()#获取实现函数的算法 print(code)
插入排序
frompygorithm.sortingimportinsertion_sort l=[9,4,5,1,7] result=insertion_sort(l) print(result)#[1,4,5,7,9] code=insertion_sort.get_code()#获取实现函数的算法 print(code)
归并排序
frompygorithm.sortingimportmerge_sort l=[9,4,5,1,7] result=merge_sort.sort(l) print(result)#[1,4,5,7,9] code=merge_sort.get_code()#获取实现函数的算法 print(code)
快速排序
frompygorithm.sortingimportquick_sort l=[9,4,5,1,7] result=quick_sort.sort(l) print(result)#[1,4,5,7,9] code=quick_sort.get_code()#获取实现函数的算法 print(code)
选择排序
frompygorithm.sortingimportselection_sort l=[9,4,5,1,7] result=selection_sort.sort(l) print(result)#[1,4,5,7,9] code=selection_sort.get_code()#获取实现函数的算法 print(code)
希尔排序
frompygorithm.sortingimportshell_sort l=[9,4,5,1,7] result=shell_sort.sort(l) print(result)#[1,4,5,7,9] code=shell_sort.get_code()#获取实现函数的算法 print(code)
更多经典算法:http://pygorithm.readthedocs.io/en/latest/index.html
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。