Каталонские числа представляют собой последовательность натуральных чисел, которая встречается во многих интересных проблемах подсчета, таких как следующие.
1) Подсчитайте количество выражений, содержащих n пар скобок, которые правильно сопоставлены. Для n = 3 возможными выражениями являются ((())), () (()), () () (), (()) (), (() ()).
2) Подсчитайте количество возможных деревьев бинарного поиска с n ключами (см. Это )
Смотрите это для других приложений.
Первые несколько каталонских чисел для n = 0, 1, 2, 3,… являются 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862,…
|
Выход:
1 1 2 5 14 42 132 429 1430 4862
Решение для динамического программирования
Мы можем заметить, что вышеописанная рекурсивная реализация выполняет много повторяющихся операций (мы можем сделать то же самое, рисуя дерево рекурсии). Поскольку существуют перекрывающиеся подзадачи, мы можем использовать для этого динамическое программирование. Ниже приводится реализация, основанная на динамическом программировании на C ++.
|
Выход:
1 1 2 5 14 42 132 429 1430 4862
Пожалуйста, обратитесь к полной статье о программе для n-го каталонского номера для более подробной информации!
Рекомендуемые посты:
- Программа для удаления пустых элементов массива в PHP
- Программа для вставки нового элемента в массив на любую позицию в PHP
- PHP программа для наивного алгоритма поиска по шаблону
- PHP программа для алгоритма Рабина-Карпа для поиска по шаблону
- Программа PHP для печати всех перестановок данной строки
- Программа PHP для медианы двух отсортированных массивов одинакового размера
- Программа PHP для решения проблемы подмножества | DP-25
- PHP-программа для непрерывного массива с наибольшей суммой
- Программа PHP для минимального количества прыжков, чтобы достичь конца
- PHP-программа для резки прута | DP-13
- Программа PHP для самой длинной палиндромной подпоследовательности | DP-12
- PHP-программа для головоломки с яйцом | DP-11
- Программа PHP для подсчета устанавливает биты в целое число
- Программа PHP, чтобы найти число, происходящее нечетное количество раз
- Программа PHP для подсчета количества двоичных строк без последовательных 1
0.00 (0%) 0 votes