关于素数的简单算法整理
1、梅森尼数
import java.util.ArrayList;public class text6 {/*** 梅森尼数(2的N次方减一是素数,N也必须是素数)*/private static ArrayList<Integer> list = new ArrayList<Integer>();private static ArrayList<Integer> list1 = new ArrayList<Integer>();public static void main(String[] args) {// 求出(2的30次方的所有情况)fun();fun2();System.out.println("2的30次方以内的所有情况:");show();}// 求出1~30所有的素数并存放在list里面public static void fun() {for (int i = 1; i < 30; i++) {if (fun1(i)) {list.add(i);}}}// 判断数字是否素数public static boolean fun1(int k) {int i;for (i = 2; i < k; i++) {if (k % i == 0) {return false;}}if (i == k) {return true;}return false;}// 按照题目要求求出所有的梅森尼数保存在list1中public static void fun2() {for (int i = 0; i < list.size(); i++) {if (fun1((int) (Math.pow(2, list.get(i)) - 1))) {list1.add(list.get(i));}}}// 按照题目要求打印public static void show() {for (int i = 0; i < list1.size(); i++) {// int sum=(int) (Math.pow(2, list1.get(i))-1);System.out.println("2^" + list1.get(i) + "-1="+ (int) (Math.pow(2, list1.get(i)) - 1));}}}
2、哥德巴赫猜想(任何大于2的偶数都能表示为两个素数之和)
package com.fit.getPingyin;import java.util.ArrayList;public class text8 {/*** 等差素数数列*/private static ArrayList<Integer> list = new ArrayList<Integer>();public static void main(String[] args) {fun();System.out.println("100以内所有的等差素数数列:");// 最多只能解决100以内,其他不敢保证,存在问题fun2();}// 求出1~100所有的素数并存放在list里面public static void fun() {for (int i = 1; i < 100; i++) {if (fun1(i)) {list.add(i);}}}// 判断数字是否素数public static boolean fun1(int k) {int i;for (i = 2; i < k; i++) {if (k % i == 0) {return false;}}if (i == k) {return true;}return false;}// 根据条件求出所有的等差素数数列(还需要改进,存在漏洞)public static void fun2() {for (int i = 0; i < list.size(); i++) {for (int j = 0; j < list.size(); j++) {for (int k = 2; k < list.size(); k++) {if (list.get(i) - list.get(j) == list.get(j) - list.get(k)&& list.get(i) != list.get(j)) {System.out.print(list.get(i) + "," + list.get(j) + ","+ list.get(k) + " ");if (list.get(i) - list.get(j) < 0) {System.out.println("公差为:"+ (-(list.get(i) - list.get(j))));} else {System.out.println("公差为:"+ (list.get(i) - list.get(j)));}}}}}}
}
3.第100002个素数
public class text1 {/*** 第100002个素数*/public static void main(String[] args) {int arr[] = new int[1500000];int n = 1;for (int i = 2; i < 1500000; i++) {for (int j = i * 2; j < 1500000; j = j + i) {arr[j] = 1;}}for (int i = 2; i <= 100002; i++) {while (arr[n = n + 2] == 1);}System.out.println(n);}}
关于素数的简单算法整理相关推荐
- 常见数据结构与算法整理总结(下)
原文链接:https://www.jianshu.com/p/42f81846c0fb 这篇文章是常见数据结构与算法整理总结的下篇,上一篇主要是对常见的数据结构进行集中总结,这篇主要是总结一些常见的算 ...
- 判断素数或者求出素数的基本算法 《挑战程序设计竞赛》
2018-2-28 首先我们得明确一个概念,那就是什么是素数,据我的了解,素数就是除了1和它本身之外,不存在其他的因数的数. 1.素性测试 判断给定的数n是否是素数 这应该是最简单的了,直接从2至n, ...
- 经典算法——韩信点兵问题的简单算法
搞开发的人都需要积累一些经典算法,以备不时之须. 搞开发也有好几年了,积累的一些算法一直没做过整理,这段时间无聊就把这些算法整理以下,以备以后之用. 本文是关于阶梯的一个算法,用到了剩余定理算法,分享 ...
- 精华游戏算法整理_整理游戏
精华游戏算法整理 在HTML5 2D游戏开发系列的上一部分文章结尾,Snail Bait处于可玩但原始的状态. 在这一期的最后一部分中,我将向您展示如何将Snail Bait从该状态带到最终版本,如图 ...
- python求素数积_用Python求素数的快速算法源码示例
本篇文章为Python算法相关,用Python求素数的快速算法源码示例.算法在Python的学习中算是一个要点,能研究明白算法的同学都可以算的上是Python的大牛了. 首先简单的来说下什么是素数:质 ...
- Terrain 算法整理。基本常识。
Terrain 算法整理.基本常识. 制作地形的方法大致分为 Voxel, Height map, Mesh 这几种,会根据使用的技术有各自的长短处,常识上的长短处如下.Unity 用的是高度图,所以 ...
- 点云处理算法整理(超详细教程)
点云处理算法整理(超详细教程) 目录 一. 线性回归_最小二乘法.梯度下降法 二. 线性回归_最小二乘法.RANSAC算法 三. 最近点迭代_ICP算法 四. 常见三角网格划分_voronoi图和De ...
- python判断质数_使用Python语言判断质数(素数)的简单方法讲解
本文主要向大家介绍了使用Python语言判断质数(素数)的简单方法,通过具体的实例让大家了解,希望对大家学习Python语言有所帮助. 质数又称素数.指在一个大于1的自然数中,除了1和此整数自身外,不 ...
- JAVA 判断简单密码算法_十道简单算法题二【Java实现】
前言 清明不小心就拖了两天没更了-- 这是十道算法题的第二篇了-上一篇回顾:十道简单算法题 最近在回顾以前使用C写过的数据结构和算法的东西,发现自己的算法和数据结构是真的薄弱,现在用Java改写一下, ...
最新文章
- 你中招了吗?混不好大学的人,都有这4种表现
- C#Winform自动检测版本更新,下载最新版本
- 11.8. DOMDocument
- 用JS解决图片太大,把网站撑变形的问题
- python 音速_webpack多页应用架构系列(十一):预打包Dll,实现webpack音速编译
- 基于MaxCompute分布式Python能力的大规模数据科学分析
- 用CComPtr吧,COM接口指针很危险
- problem making ssl connection
- php -- 取日期
- 第九章 深度强化学习-Double DQN
- Net(C#)高级程序员面试题
- 取消参考文献自动编号_毕业论文给尾注加[ ]及删除自动编号
- Windows系统安装失败日志分析
- 使用ArcGIS实现地貌晕渲
- 家用洗地机怎么选?2023高性价比家用洗地机推荐
- Rockchip Android平台内存优化及系统裁剪
- 64匹马,8个赛道,找出前4名最少比赛多少场?
- 360WiFi文件夹存储位置如何更改
- DNA存储:这些公司正在开启数据存储的未来
- Python Cookbook - 数字的四舍五入 (round(value, ndigits) 函数)