问题

求小于N的最大素数

分析

  枚举:从可能的集合中一一列举各元素

  枚举过程中需要考虑的问题:

  1. 给出解空间
  2. 减少搜索的空间
  3. 采用合适的搜索顺序

  枚举关键字(枚举核心):减少规模

代码实现

 1 import java.util.*;
 2 
 3 public class Main{
 4     public static void main(String[] args){
 5         Scanner scanner = new Scanner(System.in);
 6         int N = scanner.nextInt();
 7         for(int i=N-1;i>=2;--i){
 8             if(judge(i)){
 9                 System.out.println(i);
10                 break;
11             }
12         }
13     }
14     public static boolean judge(int n){
15         for(int i=2;i*i<=n;++i){
16             if(n%i == 0){
17                 return false;
18             }
19         }
20         return true;
21     }
22 }

 

posted on 2020-04-05 10:03  白日梦想家_G  阅读(475)  评论(0编辑  收藏  举报