Учитывая строку str , задача состоит в том, чтобы напечатать все перестановки str . Перестановка — это расположение всего или части набора объектов с учетом порядка расположения. Перестановка не должна иметь повторяющихся строк в выводе.
Примеры:
Input: str = “aa”
Output:
aa
Note that “aa” will be printed only once
as duplicates are not allowed.Input: str = “ab”
Output:
ab
ba
Подход: напишите рекурсивную функцию, которая удаляет один за другим символ из исходной строки и генерирует новую строку, добавляя эти удаленные символы. Базовое условие будет, когда все символы были использованы. В этом случае вставьте сгенерированную строку (перестановку исходной строки) в набор , чтобы избежать дублирования.
Ниже приведена реализация вышеуказанного подхода:
|
Выход:
ab ba
Рекомендуемые посты:
- Распечатать все перестановки строки в Java
- Java-программа для печати различных перестановок строки
- Напишите программу для печати всех перестановок данной строки
- Генерация всех перестановок строки, которые соответствуют заданным ограничениям
- Распечатать все подпоследовательности строки
- Распечатать все палиндромные перегородки строки
- Задав строку, выведите все возможные палиндромные разделы.
- Распечатать всю перестановку строки, используя ArrayList
- Распечатать все подпоследовательности строки, используя ArrayList
- Распечатать все комбинации строк в лексикографическом порядке
- Java ArrayList для печати всех возможных слов из цифр телефона
- Проверьте, является ли данная строка суммой
- Вывести суммы всех подмножеств данного набора
- Распечатать шаблон без использования петли
- Как вы будете печатать числа от 1 до 100 без использования петли? | Set-2
0.00 (0%) 0 votes