【算法】程序猿不写代码是不对的28

来源:互联网 发布:网络歌手排行榜2005 编辑:程序博客网 时间:2024/05/19 05:37
package com.kingdz.algorithm.time201703;/** * 略微改进版的哥德巴赫猜想,减少计算素数的次数 *  * @author kingdz *  */public class Algo10 {public static void main(String[] args) {int[] prime = createPrime(100);for (int i = 6; i < 1000; i = i + 2) {int flag = 1;for (int j = 2; j <= i / 2; j++) {// 如果其中一个数是偶数则排除if (j % 2 == 0 || (i - j) % 2 == 0) {continue;}if (prime[j] == 1 && prime[i - j] == 1) {// 两个数都是素数,则输出System.out.println(i + "=" + j + "+" + (i - j));flag = 0;break;}}// 如果有某个数不符合猜想则输出errorif (flag == 1) {System.out.println("error\t" + i);}}}/** * 计算素数组成的数组 *  * @param number * @return */private static int[] createPrime(int number) {int[] prime = new int[number];for (int i = 2; i < prime.length; i++) {prime[i] = 1;}for (int i = 2; i * i < prime.length; i++) {if (prime[i] == 1) {for (int j = 2 * i; j < prime.length; j++) {if (j % i == 0) {prime[j] = 0;}}}}return prime;}}

0 0
原创粉丝点击