java 判斷一個數是否是素數詳解

想了解更多算法題,可以關注微信公衆號“數據結構和算法”,每天一題爲你精彩解答。也可以掃描下面的二維碼關注
在這裏插入圖片描述

1,素數是指在大於1的自然數中,除了1和他本身以外不再有其他因數的自然數

 	public static boolean isPrime(long x) {
   	  if (x < 2)
    	     return false;
    	 if (x == 2)
      	   return true;
   	  if ((x & 1) == 0)
      	   return false;
    	 final int max = (int) Math.sqrt(x);
    	 for (int i = 3; i <= max; i += 2) {
     	   if ((x % i) == 0) {
       	     return false;
       	 }
   	 }
   	 return true;
	}

第6-7行是過濾掉偶數,因爲偶數除了2都不是素數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章