- Правильная скобочная последовательность
-
Пра́вильная ско́бочная после́довательность (ПСП) — частный случай скобочной последовательности. Правильные скобочные последовательности образуют язык Дика и формально определяются следующим образом:
-
- "" (пустая строка) — ПСП
- ПСП, взятая в скобки одного типа — ПСП
- ПСП, к которой приписана слева или справа ПСП — тоже ПСП
Количество правильных скобочных последовательностей
Количество правильных скобочных последовательностей из
скобок (
открывающих и
закрывающих) одного вида выражается равно числу Каталана
, что можно вывести несколькими способами:
и
для
Это соотношение легко получить, заметив, что любая непустая правильная скобочная последовательность
однозначно представима в форме
, где
— правильные скобочные последовательности.
- Выражение через биномиальные коэффициенты:
- Ещё одно рекуррентное соотношение:
При этом
Легко показать, что если в скобочной последовательности имеется
типов скобок, то количество возможных правильных скобочных последовательностей с
открывающими скобками равно произведению
на
. Действительно, для каждой открывающей скобки из
существует
различных вариантов её выбора. Выбор закрывающей скобки однозначно определён уже выбранной парной ей открывающей и не учитывается.
Генерация правильных скобочных последовательностей
Введём теперь лексикографический порядок на скобочных последовательностях. В первую очередь заметим, что открывающая скобка идёт раньше, чем закрывающая; так как скобочная последовательность, начинающаяся с закрывающей скобки, не является правильной. Теперь каждому из
типов скобок присвоим свой лексикографический приоритет. Выбор этого приоритета не принципиален и ни на что не повлияет в ходе дальнейших рассуждений. Поэтому будем считать, что iй тип скобок находится на iй позиции в лексикографическом порядке. Очевидно, что первой последовательностьтью с
открывающими скобками будет последовательность вида
. Теперь рассмотрим задачу о получении следующей скобочной последовательности после данной.
Получение следующей правильной скобочной последовательности
Категория:- Комбинаторика
-
Wikimedia Foundation. 2010.