497просмотров
7.3%от подписчиков
19 марта 2026 г.
statsScore: 547
Задача: 389. Find the Difference
Сложность: easy Даны две строки s и t. Строка t генерируется путем случайного перемешивания строки s с добавлением еще одной буквы в случайную позицию. Верните букву, которая была добавлена в t. Пример:
Input: s = "abcd", t = "abcde"
Output: "e"
Explanation: 'e' is the letter that was added. 👨💻 Алгоритм: 1⃣Отсортируйте строки s и t. 2⃣Итерируйте по длине строк и сравнивайте их посимвольно. Это позволяет проверить, присутствует ли текущий символ строки t в строке s. 3⃣Как только встретится символ, который есть в строке t, но отсутствует в строке s, мы найдем лишний символ, который скрывала строка t все это время. 😎 Решение:
class Solution { public char findTheDifference(String s, String t) { char[] sortedS = s.toCharArray(); char[] sortedT = t.toCharArray(); Arrays.sort(sortedS); Arrays.sort(sortedT); int i = 0; while (i < s.length()) { if (sortedS[i] != sortedT[i]) { return sortedT[i]; } i += 1; } return sortedT[i]; }
} Ставь 👍 и забирай 📚 Базу знаний