56:最初の文字は一回だけ現れます.

5465 ワード

一回目の文字
文字列の最初の文字は一回だけ現れます.文字列の中で最初の一回だけの文字を見つけます.例えば、「abaccdeff」と入力したら、出力’b’です.
public class Offer56 {
   public static void main(String[] args) {
       new Offer56().firstNotRepeatingChar("abaccdeff");
   }
   //   :                       ,   ,map
   public void firstNotRepeatingChar(String str){
       if(str==null||str.length()==0)return ;
       int[] temp =  new int[256];
       for (int i = 0; i < str.length(); i++) {
           int c = str.charAt(i);
           temp[c]++;
       }

       for (int i = 0; i < str.length(); i++) {
           int c = str.charAt(i);
           if(temp[c]==1){
               System.out.println((char)c);
               break;
           }
       }
   }
}