Python中文
首页
教程
问答
标签
搜索
登录
注册
求数优化的所有因子
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我编写了以下函数,它查找给定自然数的所有除数并将它们作为列表返回:</p> <pre><code>def FindAllDivisors(x): divList = [] y = 1 while y <= math.sqrt(x): if x % y == 0: divList.<a href="https://www.cnpython.com/list/append" class="inner-link">append</a>(y) divList.append(int(x / y)) y += 1 return divList </code></pre> <p>它工作得很好,只是当输入的是18位数字时速度很慢。你对我如何加快速度有什么建议吗?</p> <p><strong>更新</strong>:</p> <p>基于费马小定理,我有以下方法来检查素性:</p> <pre><code>def CheckIfProbablyPrime(x): return (2 << x - 2) % x == 1 </code></pre> <p>这种方法在检查单个数字时非常有效,但是我不确定是否应该使用它来编译所有素数到某个边界。</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我建议将<code>math.sqrt(x)</code>的结果存储在一个单独的变量中,然后对照它检查<code>y</code>。否则将在<code>while</code>的每个步骤重新计算,并且<code>math.sqrt</code>绝对不是轻量级操作。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
尝试加密和解密文本文件(Python)
2 回答
尝试加密文本文件会导致类型错误
7 回答
尝试加密时溢出错误
4 回答
尝试加载.plist文件时出现“无此类文件或目录”错误
6 回答
尝试加载“blog.templatetags.blog_标记”时引发ImportError:没有名为“markdown”的模块
5 回答
尝试加载“menus.templatetags.menus\u标记”时引发ImportError:无法从“menus.models”导入名称“menus”
5 回答
尝试加载5GB文本fi时发生Python内存错误
5 回答
尝试加载5GB文本文件时出现MemoryError
5 回答
尝试加载Django模板时出现渲染错误
6 回答
尝试加载exi时出错
7 回答
尝试加载imag时使用精灵表失败
5 回答
尝试加载json.Python时出错
5 回答
尝试加载json文件时遇到此错误:json.decoder.jsondeCoderror:预期值:第1行第1列(char 0)
1 回答
尝试加载keras和tensorflow,我仍然得到ModuleNotFoundError:在我的Anaconda环境中没有名为'tensorflow_core.estimator'的模块
3 回答
尝试加载Librosa的示例fi时出现“找不到文件”错误
8 回答
尝试加载matplotlib时发生iPython笔记本错误
2 回答
尝试加载MP3时出现PyGame错误
9 回答
尝试加载pickled matplotlib figu时发生AttributeError
8 回答
尝试加载pickle文件时出错
8 回答
尝试加载Pytoch模型时遇到问题:“在模块中找不到标识”
2 回答