389-找不同

389-找不同

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

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

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

示例:

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

输出:
e

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

还是使用int[26]数组,与前面的题无异。

    public char findTheDifference(String s, String t) {
        int[] caps = new int[26];

        for(char c : s.toCharArray()) {
            caps[c-'a']++;
        }
        for(char c : t.toCharArray()) {
            int cnt = caps[c-'a'];
            if(cnt == 0) {
                return c;
            } else {
                caps[c-'a']--;
            }
        }
        return '-';
    }

猜你喜欢

转载自www.cnblogs.com/angelica-duhurica/p/12177781.html