算法-获取质数(素数)数组
写一个方法得到一个素数数组,这些素数不能大于给定的自然数。
我看网上大多数的实现都是用自然数n除以2到n/2+1的数,如果整除了,就判定不是素数。
我的想法不一样,我一个数组保存已经得到的素数,然后用n除以这些素数,如果整除了,就判定不是素数。
具体实现如下:
{
List<int> primeList = new List<int>();
int n = 2;
while (n <= boundary)
{
bool isPrime = true;
for (int i = 0; i < primeList.Count; i++)
{
if (n % primeList[i] == 0)
{
isPrime = false;
break;
}
}
if (isPrime)
{
primeList.Add(n);
}
if (n < 3)
{
n++;
}
else
{
n += 2;
}
}
return primeList.ToArray();
}
转载于:https://www.cnblogs.com/ericwen/archive/2012/07/15/primenumbe.html
算法-获取质数(素数)数组相关推荐
- 算法提高 质数的后代(合数为两个素数的乘积)
算法提高 质数的后代 描述 在上一季里,曾提到过质数的孤独,其实从另一个角度看,无情隔膜它们的合数全是质数的后代,因为合数可以由质数相乘结合而得. 如果一个合数由两个质数相乘而得,那么我们就叫它是质数 ...
- Python 算法之 求素数、质数
Python 如何求素数.质数 文章目录 Python 如何求素数.质数 素数.质数(重点) 方法一:枚举 方法二:厄拉多塞筛法[埃氏筛] 方法三:线性筛 相关博客
- 用php输出一百以内的素数,php输出1000以内质数(素数)示例
php输出1000以内质数(素数)示例 复制代码 代码如下: for($i = 2; $i < 1001; $i++) { $primes = 0; for($k = 1; $k <= $ ...
- 算法-两个排序数组的中位数
题目 两个排序数组的中位数 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2 . 请找出这两个有序数组的中位数.要求算法的时间复杂度为 O(log (m+n)) . 示例 1:num ...
- 第十四届蓝桥杯集训——for——判断质数/素数
第十四届蓝桥杯集训--for--判断质数/素数 目录 第十四届蓝桥杯集训--for--判断质数/素数 1.什么是质数/素数? 2.整除代码的表达方式? 3.判断素数代码 4.素数的价值 5.素数分布规 ...
- 基于uFUN开发板的心率计(二)动态阈值算法获取心率值
文章目录 前言 IBI和BPM 核心操作 -- 识别一个脉搏信号 问题一:阈值的选取 问题二:特征点识别 算法整体框架与代码实现 总结 基于uFUN开发板的Keil源码下载 uFUN评测系列文章 前言 ...
- 常见数据结构和算法实现(排序/查找/数组/链表/栈/队列/树/递归/海量数据处理/图/位图/Java版数据结构)
常见数据结构和算法实现(排序/查找/数组/链表/栈/队列/树/递归/海量数据处理/图/位图/Java版数据结构) 数据结构和算法作为程序员的基本功,一定得稳扎稳打的学习,我们常见的框架底层就是各类数据 ...
- 算法提高 质数的后代
算法提高 质数的后代 在上一季里,曾提到过质数的孤独,其实从另一个角度看,无情隔膜它们的合数全是质数的后代,因为合数可以由质数相乘结合而得. 如果一个合数由两个质数相乘而得,那么我们就叫它是质数们的直 ...
- 给定一个含n(n≥1)个整数的数组,请设计一个在时间上尽可能高效的算法,找出数组中未出现的最小正整数。
笔者初涉<算法设计与分析>这门专业课,在做一些算法设计题的过程中遇到一些小感悟,特此记录和大家分享. 下面直接给出算法题目: 给定一个含n(n≥1)个整数的数组,请设计一个在时间上尽可能高 ...
- PulseSensor开发文档(二)动态阈值算法获取心率值
文章目录 1.摘要 2.算法核心思想与心率信号的有效特征点 3.动态阈值算法分思路分析 4.算法整体实现 5.算法实现效果 6.小结 1.摘要 在上一篇文章中:具体介绍了如何用DMA和ADC采集心电数 ...
最新文章
- java中getinputstream_解析request.getInputStream()得到的流
- 使用HttpHandler实现图片防盗链
- 毕加索发布轻量化转化引擎及BIMSOP协作云平台
- php将img中的宽高删除,PHP删除HTML中宽高样式的详解
- 在数据库技术中脏数据是指_数据库安全关键技术之数据库加密技术
- Oracle操作数据库常用名命令(set linesize,pagesize,conn命令,feedback命令)
- git命令之git tag 给当前分支打标签
- Git之创建远程分支和删除远程分支
- 润乾报表分组求和_一招搞定各种报表合计需求
- avi和音频合成 ffmpeg_使用Java和ffmpeg把音频和视频合成视频的操作方法
- java按钮陷下去_付费?广告?捐款?如何让开源软件活下去?
- Qt文档阅读笔记-两视图共享模型实现冻结列效果(frozencolumn解析与实例)
- 《剑指Offer》用两个栈来实现队列
- WORD常用版式保存为模板?
- selenium使用send_keys()方法写中文报错的解决方法
- SQL错误Duplicate column name 'NAME'名字重复应使用别名
- 拓端tecdat|R语言分布滞后非线性模型(DLNM)研究发病率,死亡率和空气污染示例
- 【车间调度】基于matlab模拟退火算法求解车间调度问题【含Matlab源码 894期】
- python模拟人工滑动_python selenium模拟滑动操作
- Learning to Fuse Asymmetric Feature Maps in Siamese Trackers 论文与代码笔记