389. Find the Difference
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.
java:
public class Ans_389_Find_the_Difference
{
public static void main(String[] args)
{
// TODO Auto-generated method stub
}
public char findTheDifference(String s, String t)
{
char[] arry_s = s.toCharArray();
char[] arry_t = t.toCharArray();
Character res = null;
HashMap<Character, Integer> map = new HashMap<Character, Integer>();
for(int i = 0;i<arry_s.length;i++)
{
map.put(arry_s[i], map.getOrDefault(arry_s[i], 0)+1);
}
for(int i = 0;i<arry_t.length;i++)
{
int val = map.getOrDefault(arry_t[i], 0)-1;
if(val<0)
{
res = arry_t[i];
}
else
{
map.put(arry_t[i], val);
}
}
return res;
}
}