//给定两个字符串 s 和 t ,它们只包含小写字母。 // // 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 // // 请找出在 t 中被添加的字母。 // // // // 示例 1: // // //输入:s = "abcd", t = "abcde" //输出:"e" //解释:'e' 是那个被添加的字母。 // // // 示例 2: // // //输入:s = "", t = "y" //输出:"y" // // // // // 提示: // // // 0 <= s.length <= 1000 // t.length == s.length + 1 // s 和 t 只包含小写字母 // // Related Topics 位运算 哈希表 字符串 排序 👍 309 👎 0 package leetcode.editor.cn; //389:找不同 public class FindTheDifference{ public static void main(String[] args) { Solution solution = new FindTheDifference().new Solution(); } //leetcode submit region begin(Prohibit modification and deletion) class Solution { public char findTheDifference(String s, String t) { int[] chs = new int[26]; for (char ch:s.toCharArray()){ chs[ch-'a']++; } for (char ch:t.toCharArray()){ if(chs[ch-'a']==0){ return ch; } chs[ch-'a']--; } return 'a'; } } //leetcode submit region end(Prohibit modification and deletion) }