5 эффективных методов проверки того, являются ли две строки анаграммами

Чтобы проверить, являются ли две строки анаграммами, то есть содержат ли они одни и те же символы, но в разном порядке, вы можете использовать несколько методов. Вот несколько часто используемых подходов:

  1. Метод 1: сортировка

    • Преобразуйте обе строки в нижний регистр (если регистр не учитывается).
    • Отсортируйте символы обеих строк в алфавитном порядке.
    • Сравните отсортированные строки. Если они равны, исходные строки являются анаграммами.
  2. Метод 2: подсчет частоты

    • Создайте два массива или хеш-карты для хранения частоты каждого символа в обеих строках.
    • Пройти по каждой строке и увеличить количество каждого символа в соответствующем массиве или хеш-карте.
    • Сравните массивы частот или хэш-карты. Если они равны, исходные строки являются анаграммами.
  3. Метод 3: подсчет символов

    • Создайте массив или хеш-карту, чтобы хранить количество каждого символа в одной строке.
    • Пройти по первой строке и увеличить количество каждого символа в массиве или хэш-карте.
    • Пройти по второй строке и уменьшить количество каждого символа.
    • Если все значения обнуляются, исходные строки являются анаграммами.
  4. Метод 4. Использование простых чисел

    • Назначьте каждому символу простое число (например, a = 2, b = 3, c = 5 и т. д.).
    • Умножьте простые числа, присвоенные каждому символу в одной строке.
    • Умножьте простые числа, присвоенные каждому символу во второй строке.
    • Если продукты равны, исходные строки являются анаграммами.
  5. Метод 5: использование XOR

    • Выполнить операцию XOR для всех символов в обеих строках.
    • Если результат равен нулю, исходные строки являются анаграммами.