Вывести все повторяющиеся цифры, присутствующие в заданном числе, в отсортированном порядке

Опубликовано: 2 Сентября, 2022

Учитывая целое число N , задача состоит в том, чтобы напечатать все повторяющиеся цифры, присутствующие в N , в отсортированном порядке.

Примеры:

Input: N = 45244336543
Output: 3 4 5
Explanation: The duplicate digits are 3 4 5

Input: N = 987065467809
Output: 0 6 7 8 9

Подход: Идея состоит в том, чтобы использовать хеширование для хранения частоты цифр N и печатать те цифры, частота которых превышает 1.

  • Инициализируйте HashMap, чтобы сохранить частоту цифр 0-9 .
  • Преобразуйте целое число в его эквивалентную строку.
  • Переберите символы строки и для каждого символа выполните следующие шаги:
    • Преобразование текущего символа в целое число с помощью приведения типов
    • Увеличьте количество этой цифры в HashMap.
  • Пройдите по HashMap и напечатайте цифры, количество которых превышает 1.

Ниже приведена реализация вышеуказанного подхода:

Временная сложность: O (log 10 N)
Вспомогательное пространство: O(1)

Подход 2: Использование count().
С помощью count() мы пытаемся найти символ, встречающийся более одного раза, сохранить его в структуре данных и отсортировать.