帝王谷资源网 Design By www.wdxyy.com
本文实例讲述了Python pygorithm模块用法。分享给大家供大家参考,具体如下:
pygorithm:一个用纯粹python编写的Python模块,用于纯粹的教育目的。只需导入所需的算法即可获取代码,时间复杂度等等。开始学习Python编程的好方法。了解Python中所有主要算法的实现。不需要上网就可以获得所需的代码。
安装
pip3 install pygorithm
常见函数
斐波那契数列
from pygorithm.fibonacci import recursion result = recursion.get_sequence(10) print(result) # [0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55] code = recursion.get_code() # 获取实现函数的算法 print(code)
获取最小公倍数
from pygorithm.math import lcm result = lcm.lcm([4,6]) print(result) # 12 code = lcm.get_code() # 获取实现函数的算法 print(code)
质数算法
from pygorithm.math import sieve_of_eratosthenes result = sieve_of_eratosthenes.sieve_of_eratosthenes(10) # 获取小于10的质数 print(result) # [2,3,5,7] code = lcm.get_code() # 获取实现函数的算法 print(code)
阶乘
from pygorithm.math import factorial result = factorial.factorial(5) # 获取5的阶乘,即1*2*3*4*5 print(result) # 120 code = factorial.get_code() # 获取实现函数的算法 print(code)
十进制转二进制
from pygorithm.math import conversion result = conversion.decimal_to_binary(3) # 将3转换为二进制 print(result) # 11 code = conversion.get_code() # 获取实现函数的算法 print(code)
二进制转十进制
from pygorithm.math import conversion result = conversion.binary_to_decimal(11) # 将11转换为十进制 print(result) # 3 code = conversion.get_code() # 获取实现函数的算法 print(code)
十进制转十六进制
from pygorithm.math import conversion result = conversion.decimal_to_hex(15) # 将15转换为十六进制数 print(result) # F code = conversion.get_code() # 获取实现函数的算法 print(code)
十六进制转十进制
from pygorithm.math import conversion result = conversion.hex_to_decimal("F") # 将十六进制F转化为十进制数 print(result) # 15 code = conversion.get_code() # 获取实现函数的算法 print(code)
二分法搜索:效率高
from pygorithm.searching import binary_search l = [9,4,5,1,7] index = binary_search.search(l,5) # 获取5在列表中的位置,找到返回下标,找不到返回False print(index) code = binary_search.get_code() # 获取实现函数的算法 print(code)
线性搜索:速度慢,适用性广
from pygorithm.searching import linear_search l = [9,4,5,1,7] index = linear_search.search(l,5) # 获取5在列表中的位置,找到返回下标,找不到返回False print(index) code = linear_search.get_code() # 获取实现函数的算法 print(code)
插值搜索:注意:列表必须先经过升序排序,否则将找不到
from pygorithm.searching import interpolation_search l = [1,4,5,7,9] index = interpolation_search.search(l,4) # 获取5在列表中的位置,找到返回下标,找不到返回False print(index) code = interpolation.get_code() # 获取实现函数的算法 print(code)
冒泡排序
from pygorithm.sorting import bubble_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)
改良冒泡排序
from pygorithm.sorting import bubble_sort l = [9,4,5,1,7] result = bubble_sort.improved_sort(l) print(result) # [1, 4, 5, 7, 9]
桶排序
from pygorithm.sorting import bucket_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)
计数排序
from pygorithm.sorting import counting_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)
堆排序
from pygorithm.sorting import heap_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)
插入排序
from pygorithm.sorting import insertion_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)
归并排序
from pygorithm.sorting import merge_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)
快速排序
from pygorithm.sorting import quick_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)
选择排序
from pygorithm.sorting import selection_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)
希尔排序
from pygorithm.sorting import shell_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程序设计有所帮助。
帝王谷资源网 Design By www.wdxyy.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
帝王谷资源网 Design By www.wdxyy.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年10月26日
2024年10月26日
- 群星2013-青春缤纷辑压箱宝大公开3CD2[新加坡限量版][WAV整轨]
- 林育群.2013-BalladShow(日本版)【环球】【WAV+CUE】
- 陈加洛.1992-痛到感觉不到【宝丽金】【WAV+CUE】
- 群星.2023-宿命之敌电视剧原声带【韶愔音乐】【FLAC分轨】
- 東京事変-大発見[FLAC+CUE]
- 椎名林檎-三文ゴシップ[FLAC+CUE]
- 2024年08月04日
- 裘德《裘德「最后的水族馆」演唱会LIVE》[320K/MP3][228.89MB]
- 裘德《裘德「最后的水族馆」演唱会LIVE》[24bit 48kHz][FLAC/分轨][2.08G]
- 基因三重奏《如果你什么都不说 音乐会现场录音》[320K/MP3][145.37MB]
- 孟庭苇.1996-月亮说话(2020环球24KGOLD限量版)【上华】【WAV+CUE】
- 群星.1997-新艺宝优质音响系列·国语精选监听版【新艺宝】【WAV+CUE】
- 阿桑.2005-寂寞在唱歌(星外星引进版)【华研国际】【WAV+CUE】
- 基因三重奏《如果你什么都不说 音乐会现场录音》[FLAC/分轨][287.43MB]
- 蔡题谦《我爱你,却依然要看你走》[320K/MP3][88.65MB]