LeetCode

Given two strings s and t which consist of only lowercase letters.

String t is generated by random shuffling string s and then add one more letter at a random position.

Find the letter that was added in t.

Example:

Input:
s = "abcd"
t = "abcde"

Output:
e

Explanation:
'e' is the letter that was added.

public class Solution {
    public char findTheDifference(String s, String t) {
        int[] sarr = new int[26];
        int[] tarr = new int[26];
        Arrays.fill(sarr, 0);
        Arrays.fill(tarr, 0);
        for (int i=0; i<s.length(); i++) {
            char ch = s.charAt(i);
            sarr[ch-'a'] ++;
        }
        for (int i=0; i<t.length(); i++) {
            char ch = t.charAt(i);
            tarr[ch-'a'] ++;
        }
        for (int i=0; i<26; i++) {
            if (tarr[i] != sarr[i]) {
                return (char)(i+(int)'a');
            }
        }
        return 'a';
    }
}
原文地址:https://www.cnblogs.com/wxisme/p/5940695.html