当前位置:  开发笔记 > 后端 > 正文

红宝石中的fixnum和素数

如何解决《红宝石中的fixnum和素数》经验,为你挑选了1个好方法。

在我开始自己编写之前,有没有人看过以下行为的ruby实现?

puts 7.nextprime();     #=>  11
puts 7.previousprime(); #=>  5
puts 7.isprime();       #=> true

显然,对于大数字来说,这种事情会很难看,但对于从不超过几千的整数(对我来说是常见的例子)来说,合理的实现是可行的,因此这个问题.



1> Brian Guthri..:

Ruby带有一个内置Prime类,允许你从1开始迭代素数,但是我看不到用1以外的起始值初始化它,也没有用谓词检查来确定数字是否为素数.我要说的是,尽管你应该记住,Ruby中的数学运算速度很慢,如果性能是一个因素,那么考虑将其作为C或Java扩展编写可能会更好.这是一个如何使用RubyInline在C中生成素数的示例.

另外,我建议你避免使用方法名称7.isprime- Ruby中的约定7.prime?.

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有