LeetCode389.找不同

给定两个字符串 s 和 t,它们只包含小写字母。

字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。

请找出在 t 中被添加的字母。

示例:

输入:
s = "abcd"
t = "abcde"

输出:
e

解释:
'e' 是那个被添加的字母。

题解:
两个数组,分别进行计数,然后最后找,谁多了一个,那就是谁重复了

public:
    char findTheDifference(string s, string t) {
        vector hash(26,0);
        vector hash1(26,0);
        for(auto x : s){
            hash[x - 'a'] ++;
        }
        for(auto x : t){
            hash1[x - 'a'] ++;
        }
        for(int i = 0 ; i < 26 ; i++){
            if(hash[i] != hash1[i]) return 'a' + i;
        }
        return 'o';
    }
};

你可能感兴趣的:(LeetCode389.找不同)