Основные определения, связанные со строками — различия между версиями
(→Базовые определения) |
(→Отношения между строками: period fixups) |
||
Строка 32: | Строка 32: | ||
Пусть <tex>\beta = \underline{abr}acada\underline{bra}</tex>, тогда | Пусть <tex>\beta = \underline{abr}acada\underline{bra}</tex>, тогда | ||
*если <tex>\alpha = abr</tex>, то <tex>\alpha</tex> является префиксом <tex>\beta</tex> | *если <tex>\alpha = abr</tex>, то <tex>\alpha</tex> является префиксом <tex>\beta</tex> | ||
− | *если <tex>\alpha = bra</tex>, то суффиксом. | + | *если <tex>\alpha = bra</tex>, то <tex>\alpha</tex> является суффиксом <tex>\beta</tex>. |
{{Определение | {{Определение | ||
|definition = | |definition = | ||
− | <tex>\alpha</tex> называется '''бордером''' <tex>\beta</tex>, если <tex>\alpha</tex> одновременно является и суффиксом и префиксом. | + | <tex>\alpha</tex> называется '''бордером''' <tex>\beta</tex>, если <tex>\alpha</tex> одновременно является и суффиксом и префиксом <tex>\beta</tex>. |
|id=border | |id=border | ||
}} | }} | ||
Строка 44: | Строка 44: | ||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
− | <tex>p</tex> называется '''периодом''' <tex>\alpha</tex>, если <tex>\forall i = 1 \ldots | + | Число <tex>p</tex> называется '''периодом''' строки <tex>\alpha</tex> (<tex>n = |\alpha|</tex>), если <tex>\forall i = 1 \ldots n - p</tex> <tex>\alpha [i] = \alpha[i + p]</tex>. |
|id=border | |id=border | ||
}} | }} | ||
Строка 52: | Строка 52: | ||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
− | Строка <tex>\alpha</tex> называется сильнопериодической, если <tex> | + | Строка <tex>\alpha \neq \varepsilon</tex>, имеющая период <tex>p</tex> (<tex>p \neq |\alpha|</tex>), называется '''сильнопериодической''' с периодом <tex>p</tex>, если <tex>|\alpha|</tex> <tex>mod</tex> <tex>p = 0</tex>. |
}} | }} | ||
Версия 13:45, 21 июня 2012
Базовые определения
Определение: |
Алфавитом | называется конечное непустое множество элементов, называемых символами.
Определение: |
Нейтральный элемент (пустую строку) обозначим как | . Для любой строки верно: .
Определение: |
Цепочкой (словом, строкой) конечной длины обозначим элемент из | .
Определение: |
Конкатенацией строк | и является строка . Конкатенация является ассоциативной операцией.
с операцией конкатенации и нейтральным элементом образуют моноид. Данный моноид совпадает со свободным над .
Отношения между строками
Определение: |
называется префиксом , если . Аналогично определяется суффикс строки. |
Пусть , тогда
- если , то является префиксом
- если , то является суффиксом .
Определение: |
называется бордером , если одновременно является и суффиксом и префиксом . |
Пусть , тогда будет бордером .
Определение: |
Число | называется периодом строки ( ), если .
Строка является сильнопериодической ( ).
Определение: |
Строка | , имеющая период ( ), называется сильнопериодической с периодом , если .
Строка является сильнопериодической ( ).
Определение: |
Строка | является подстрокой , если .
Строка является подстрокой .
Определение: |
Строка
| , если:
Строка , т.к. является префиксом .
Строка
, т.к. .Литература
- Гасфилд Д. Строки, деревья и последовательности в алгоритмах: Информатика и вычислительная биология. — 2-е изд.