gpt4 book ai didi

Python pygorithm模块用法示例【常见算法测试】

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 24 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章Python pygorithm模块用法示例【常见算法测试】由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

本文实例讲述了Python pygorithm模块用法。分享给大家供大家参考,具体如下:

pygorithm:一个用纯粹python编写的Python模块,用于纯粹的教育目的。只需导入所需的算法即可获取代码,时间复杂度等等。开始学习Python编程的好方法。了解Python中所有主要算法的实现。不需要上网就可以获得所需的代码.

安装 。

?
1
pip3 install pygorithm

常见函数 。

斐波那契数列 。

?
1
2
3
4
5
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)

获取最小公倍数 。

?
1
2
3
4
5
from pygorithm.math import lcm
result = lcm.lcm([ 4 , 6 ])
print (result)    # 12
code = lcm.get_code()      # 获取实现函数的算法
print (code)

质数算法 。

?
1
2
3
4
5
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)

阶乘 。

?
1
2
3
4
5
from pygorithm.math import factorial
result = factorial.factorial( 5 )   # 获取5的阶乘,即1*2*3*4*5
print (result)    # 120
code = factorial.get_code()   # 获取实现函数的算法
print (code)

十进制转二进制 。

?
1
2
3
4
5
from pygorithm.math import conversion
result = conversion.decimal_to_binary( 3 # 将3转换为二进制
print (result)    # 11
code = conversion.get_code()  # 获取实现函数的算法
print (code)

二进制转十进制 。

?
1
2
3
4
5
from pygorithm.math import conversion
result = conversion.binary_to_decimal( 11 # 将11转换为十进制
print (result)    # 3
code = conversion.get_code()  # 获取实现函数的算法
print (code)

十进制转十六进制 。

?
1
2
3
4
5
from pygorithm.math import conversion
result = conversion.decimal_to_hex( 15 )   # 将15转换为十六进制数
print (result)    # F
code = conversion.get_code()  # 获取实现函数的算法
print (code)

十六进制转十进制 。

?
1
2
3
4
5
from pygorithm.math import conversion
result = conversion.hex_to_decimal( "F" )   # 将十六进制F转化为十进制数
print (result)    # 15
code = conversion.get_code()  # 获取实现函数的算法
print (code)

二分法搜索:效率高 。

?
1
2
3
4
5
6
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)

线性搜索:速度慢,适用性广 。

?
1
2
3
4
5
6
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)

插值搜索:注意:列表必须先经过升序排序,否则将找不到 。

?
1
2
3
4
5
6
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)

冒泡排序 。

?
1
2
3
4
5
6
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)

改良冒泡排序 。

?
1
2
3
4
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]

桶排序 。

?
1
2
3
4
5
6
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)

计数排序 。

?
1
2
3
4
5
6
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)

堆排序 。

?
1
2
3
4
5
6
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)

插入排序 。

?
1
2
3
4
5
6
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)

归并排序 。

?
1
2
3
4
5
6
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)

快速排序 。

?
1
2
3
4
5
6
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)

选择排序 。

?
1
2
3
4
5
6
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)

希尔排序 。

?
1
2
3
4
5
6
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程序设计有所帮助.

原文链接:https://blog.csdn.net/y472360651/article/details/77881919 。

最后此篇关于Python pygorithm模块用法示例【常见算法测试】的文章就讲到这里了,如果你想了解更多关于Python pygorithm模块用法示例【常见算法测试】的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com