Sunday, January 1, 2017

389. Find the Difference

Q:
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.

A:


public class Solution {
    public char findTheDifference(String s, String t) {
        int[] A = new int[26];
        for(char ch : s.toCharArray())
            A[ch-'a']++;
        for(char ch : t.toCharArray())
            A[ch-'a']--;
        for(char ch = 'a';ch<='z';ch++){
            if(A[ch-'a']!=0)
                return ch;
        }
        return ' ';//error
    }
}
 


No comments:

Post a Comment