1. 程式人生 > >找出字串只出現一次的的第一個字元

找出字串只出現一次的的第一個字元

hash表實現:

        public char search(String str){
            char[] array=str.toCharArray();
            int[] hashtable=new int[256];
            for(int i=0;i<256;i++){
                hashtable[i]=0;
            }
            for(int i=0;i<array.length;i++){
                hashtable[array[i]]++;
            }
            for
(int i = 0; i < array.length; i++){ if (hashtable[array[i]] == 1){ return array[i]; } } return ' '; }
public static  char findOne(String str){
    HashMap<Character,Integer> map=
        new HashMap<Character,Integer>();
        for
(int i=0;i<str.length();i++){ if(map.containsKey(str.charAt(i))){ map.put(str.charAt(i), map.get(str.charAt(i))+1); }else{ map.put(str.charAt(i), 1); } } int index=-1; for(int i=0;i<str.length();i++){ if
(map.get(str.charAt(i))==1){ index=i; break; } } return str.charAt(index); }