筛选法求素数 & 普通法求素数
来源:互联网 发布:m258 施耐德软件 编辑:程序博客网 时间:2024/06/07 03:58
//题目:求素数~
#include<stdio.h>#include<math.h>#include<string.h>#define SIZE 1000//第一种方法:常用方法bool Isprimer(int data){double data1 = data;for(int i=2;i<=sqrt(data1);++i){if(data % i == 0){return true;}}return false;}//第二种方法:筛选法求素数//思想:标记法,不是你我就灭灯void Isprimer_1(int *arr,int len){memset(arr,0,sizeof(arr)*len);//全部标记为0for(int j=2;j<sqrt((double)len);){for(int i=2;i*j<len;++i) //把j的所有倍数全部挖掉{arr[i*j] = 1; }++j;while(arr[j] == 1 && j<sqrt((double)len))//证明它非素数,所以它的倍数肯定已经被挖掉了{++j;}}}int main(){int arr[SIZE];for(int i=0;i<SIZE;++i){arr[i] = i+1;if(!Isprimer(arr[i]))printf("%d ",arr[i]);}printf("\n");printf("*******筛选法求素数**********\n");Isprimer_1(arr,SIZE);for(int i=1;i<SIZE;++i){if(arr[i] == 0){printf("%d ",i);}}return 0;}总结:筛选法求素数的速度更棒哟,标记法的思想不错,以后可视情况多多使用呦!
阅读全文
0 0
- 筛选法求素数 & 普通法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数/
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- 筛选法求素数
- Android Studio NDK开发注意
- 轻松获万元额度,原来提额也可以这么简单!
- DescriptionResourcePathLocationType Access restriction: The method getCallerClass(int) from
- spring事物的七种事物传播属性行为及五种隔离级别
- Android菜鸟开发一年的感受
- 筛选法求素数 & 普通法求素数
- UnityShader入门精要学习笔记(十七):顶点动画
- Android切词工具——BreakIterator(3)
- E: 无法获得锁 /var/lib/dpkg/lock
- Win10桌面右键响应非常慢解决方案
- RabbitMQ初体验
- Tomcat性能优化
- 学计算机语言难么
- 使用Gradle生成BuildeConfig以及文字资源