第一个只出现一次的字符

// 使用hash表
    public static char getFirstNotRepeat(char[] arr)
    {
        if (arr == null || arr.length == 0)
        {
            return '\0';
        }
        int tableSize = 256;
        // 简单的hash表
        int[] hashTable = new int[tableSize];
        // 初始化
        for (int i = 0; i < tableSize; i++)
        {
            hashTable[i] = 0;
        }
        for (int i = 0; i < arr.length; i++)
        {
            hashTable[arr[i]]++;
        }
        for (int i = 0; i < arr.length; i++)
        {
            if (hashTable[arr[i]] == 1)
            {
                return arr[i];
            }
        }
        return '\0';
    }

posted @ 2018-01-20 21:39  qingtianBKY  阅读(91)  评论(0编辑  收藏  举报