使用Python实现质因式分解算法
来源:互联网 发布:网络监控软件破解版 编辑:程序博客网 时间:2024/06/01 09:50
本来想实现一个其它的基本数学算法问题,但是发现在实现之前必须得先完成分解质因式的算法。
没有去网上寻找什么比较好的求解算法,纯粹是按照自己的理解写了一个试探性求解算法。也就是在MIT公开课中教授提到的guess-try方法。代码实现如下:
#!/usr/bin/python
def PrimeNum(num):
r_value =[]
for i inrange(2,num+1):
for jin range(2,i):
ifi % j == 0:
break
else:
r_value.append(i)
returnr_value
def PrimeFactorSolve(num,prime_list):
for n inprime_list:
ifnum % n == 0:
return[n,num / n]
def PrimeDivisor(num):
prime_range= PrimeNum(num)
ret_vale =[]
while numnot in prime_range:
factor_list= PrimeFactorSolve(num,prime_range)
ret_vale.append(factor_list[0])
num =factor_list[1]
else:
ret_vale.append(num)
printret_vale
PrimeDivisor(120)
程序执行结果如下:
E:\WorkSpace\01_编程语言\03_Python\python_exp07>pythonpython_exp07.py
[2, 2, 2, 3, 5]
抽取测试了其他的数据,从简单的例子计算看,结果还是准确的。
- 使用Python实现质因式分解算法
- 使用Python实现RC4算法
- 使用Python实现遗传算法
- JAVA因式分解算法
- 因式分解 C++实现
- C#实现因式分解代码
- 关于因式分解的算法描述
- 算法提高 8-1因式分解
- java基础算法之因式分解
- 算法提高 8-1因式分解
- 算法提高 8-1因式分解
- 算法提高 8-1因式分解
- 算法提高 8-1因式分解
- 算法提高 8-1因式分解
- 算法提高 8-1因式分解
- python 使用分水岭算法实现走迷宫
- 使用python实现Strassen矩阵乘法算法
- 尝试使用python实现快速排序算法
- android无限轮播广告的简单实现
- 串口开发
- openssl rsa 命令行 用法
- Python 3基础教程37-tkinter添加图片和文本
- Yogurt factory
- 使用Python实现质因式分解算法
- Java 8新特性 全新的日期时间API
- React-Navigation之TabNavigator 配置
- redis事务
- bzoj1084
- 最长无重复字符的子串
- 第十章 自带电池(模块)
- 广告转化率预估指标体系(来源:赛题)
- 机房重构——注册