Java出現次數最多的整數


描述

編寫一個程序,讀入一組整數,這組整數是按照從小到大的順序排列的,它們的個數N也是由用戶輸入的,最多不會超過20。然后程序將對這個數組進行統計,把出現次數最多的那個數組元素值打印出來。如果有兩個元素值出現的次數相同,即並列第一,那么只打印比較小的那個值。

輸入

第一行是一個整數N,N<= 20;接下來有N行,每一行表示一個整數,並且按照從小到大的順序排列。

輸出

輸出只有一行,即出現次數最多的那個元素值。

難度

入門

輸入示例

5
100
150
150
200
250

輸出示例

150

完成代碼:

 1 import java.util.Scanner;
 2 
 3 import java.util.Arrays;
 4 
 5 public class Demo01 {
 6     static long max = 0;
 7     static long maxTimes = 1;
 8     public static void main(String[] args) {
 9         Scanner sc = new Scanner(System.in);
10         int N = sc.nextInt();
11         if(N < 1 || N > 20) System.exit(0);
12         long a[] = new long[N];          //設一個數組專門用來存放輸入整數的次數
13         Arrays.fill(a, 1);//數組全為1
14         long b = sc.nextLong();          //輸入的第一個整數
15         max = b;
16         for(int i = 1; i < N; i++){
17             long c = sc.nextLong();      //輸入剩下的整數
18             if(c == b){                  //當出現兩個相同的數時
19                 a[i] = a[i - 1] + 1;     //次數加一
20                 if(a[i] > maxTimes){     //找到次數最多的
21                     maxTimes = a[i];
22                     max = c;             
23                 }
24             }
25             b = c;                       //換下一個數
26      }
27         System.out.println(max);
28         sc.close();
29     }
30 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM