现在的位置: 首页 > 综合 > 正文

求第一个无重复字符

2013年03月10日 ⁄ 综合 ⁄ 共 371字 ⁄ 字号 评论关闭

 

如"total"的第一个无重复字符是o,"teeter"的第一个无重复字符是r,效率要优于O(n的平方)

 

c++风格,保证了效率的确定性

public static Character FirstNonRepeated(String string) {
    int[] counter = new int[128];
    for(int i=0; i<string.length();i++) {
        char ch = string.charAt(i);
        counter[ch]++;
    }
    for(int i=0; i<string.length();i++) {
        char ch = string.charAt(i);
        if(counter[ch] == 1)
            return ch;
        }
    return null;
}

【上篇】
【下篇】

抱歉!评论已关闭.