判断一个数是否是质数
来源:互联网 发布:php aes加解密 编辑:程序博客网 时间:2024/04/29 04:40
题目:
判断请判断429496731是否是质数?
方法:
要判断N是否是质数只要判断N除以[2,N的平方根]这个区间中的数,若其中有一个数是N的因子,则N就不是质数,否则N为质数。
该方法时间复杂度为0(根号N)。
原理:
为什么要从(根号N)开始除起呢?这是一个数学问题。我们令w:=(根号N),则可知W^2等于N。易知若N可以除尽[2-----w]中的数,则其商必属于[w,N]这个区间中,也即是若N存在因子,则因子必关于W‘对称’,这样就使时间复杂度降为(根号N)。
代码:
这个算法很简单,c++代码如下:
//@pre Vnumber.number>=2 ∧ N(number)∧ number< 429496726//@post rv<->Vi.i>1∧i<number->number ≡ 0 (mod i)bool Number::core_isPrime(double number)const{int temp=static_cast<int>(std::sqrt(number));double result_temp;while (temp!=1){result_temp=number/temp;if(result_temp-static_cast<int>(result_temp)==0){return false;}temp--;}return true;}
- Java判断一个数是否是质数
- 判断一个数是否是质数
- 判断一个数是否是质数
- 判断一个数是否是质数
- 如何判断一个数是否是质数
- 判断一个数是否是质数
- 判断一个数是否是质数
- javascript判断一个数是否是质数
- 算法小练习:判断一个数是否是质数
- 判断一个数是否是质数的方法
- Java实现——判断一个数是否是质数
- java判断一个数是否是素数(质数)
- 判断一个数是否为质数
- 判断一个数是否为质数
- 判断一个数是否为质数
- 判断一个数是否为质数
- 判断一个数是否为质数
- 判断一个数是否为质数
- 当加载外部JS文件不起作用时
- 用引用操作对对象
- sql server中datetime类型通过Hibernate与java的映射关系
- eclipse failed to create the java virtual machine 问题图文解析
- 三星TouchWiz之listview单个Item左右滑动深入剖析(一)——思路篇
- 判断一个数是否是质数
- JWFDv0.96开源工作流引擎设计--节点匹配搜索算法设计说明
- 【Apache Hadoop系列】hadoop源码编译问题记录
- rose 逆向 ascii c++ reverse engineering
- 从SQL语句的角度 提高数据库的访问性能
- access2003 下载
- #pragma pack(push,1)与#pragma pack(1)的区别
- Makefile
- C#中类和结构体的区别