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

本文实例讲述了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程序设计有所帮助。

以上是 Python pygorithm模块用法示例【常见算法测试】 的全部内容, 来源链接: utcz.com/z/333083.html

回到顶部