close

題目取自於ITSA協作平台
題目:字母出現的頻率
 

問題描述:

在通訊上面常常會用霍夫曼碼(Huffman Code)的方式來減少編碼的長度,但是要使用霍夫曼碼前,必須先知道字母出現的頻率,現在請你寫一個程式,用來統計字母(不分大小寫)出現的次數,以方便編碼之用。

輸入說明:

輸入一行英文字。

輸出說明:

各字母出現的次數,第1個數字代表A出現的次數,第2個數字代表B出現次出,依此類推,第26個數字代表Z出現的次數。各數字間用一個空白間隔,最後一個數字後面沒有空白。

範例:

Sample Input

Sample Output

No pain,no gain!

2 0 0 0 0 0 1 0 2 0 0 0 0 4 2 1 0 0 0 0 0 0 0 0 0 0

 

提示: 使用 array 記錄各字母出現的次數。

Code:

  1. import java.util.Scanner;        
  2. public class Main{        
  3. public static void main(String[] args)         
  4. {        
  5.     Scanner scn=new Scanner(System.in);              
  6.     int a[]=new int[26];     
  7.     String b=scn.nextLine();    
  8.     for(int i=0;i<b.length();i++)    
  9.     {    
  10.             if(b.charAt(i)>='A' && b.charAt(i)<='Z')    
  11.                 a[b.charAt(i)-'A']++;    
  12.             else if (b.charAt(i)>='a' && b.charAt(i)<='z')    
  13.                 a[b.charAt(i)-'a']++;    
  14.     }    
  15.         
  16.     for(int i =0;i<26;i++){    
  17.         System.out.print(a[i]);    
  18.         if(i<25)    
  19.             System.out.print(" ");    
  20.         else    
  21.             System.out.println();    
  22.     }    
  23.             
  24. }         
  25. }  
arrow
arrow
    文章標籤
    ITSA JAVA 字母出現的頻率
    全站熱搜

    ニャー提督 發表在 痞客邦 留言(0) 人氣()