Конкатенация: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[отпатрулированная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Addbot (обсуждение | вклад)
м Интервики (всего 19) перенесены на Викиданные, d:q126002
Строка 28: Строка 28:
</center>
</center>


* Множество <math>A^*\,</math> всех слов в алфавите образует [[моноид]] (так называемая «[[свободная полугруппа]]»).
* Множество <math>A^*\,</math> всех слов в алфавите образует [[моноид]] (так называемый «[[свободный моноид]]»).
* Множество <math>A^*\setminus \{\varepsilon\}\,</math> всех непустых слов в алфавите образует [[полугруппа|полугруппу]].
* Множество <math>A^*\setminus \{\varepsilon\}\,</math> всех непустых слов в алфавите образует [[полугруппа|полугруппу]].
* [[Слово#В математике|Длина]] конкатенации слов равна сумме длин операндов:
* [[Слово#В математике|Длина]] конкатенации слов равна сумме длин операндов:

Версия от 07:07, 11 июля 2013

Конкатена́ция (лат. concatenatio «присоединение цепями; сцепле́ние») — операция склеивания объектов линейной структуры, обычно строк. Например, конкатенация слов «микро» и «мир» даст слово «микромир».

В математике

Конкатенация — бинарная операция, определённая на словах данного алфавита. Если и слова в алфавите , то конкатенацией слов и , которую обозначим в этой статье как , будет слово в том же алфавите , определяемое равенством

.

Например, если и слова в алфавите , содержащем все буквы латинского алфавита, то

.

Свойства конкатенации

  • Операция конкатенации ассоциативна. То есть, если нужно выполнить конкатенацию трех слов, то от расстановки скобок результат не изменится: , и в то же время .
  • Операция конкатенации некоммутативна. В самом деле, , но . От перестановки операндов меняется результат операции, что и означает её некоммутативность.
  • Пустое слово — , — является нейтральным элементом (единицей) операции конкатенации. То есть, если  — пустое слово, то для любого слова выполнено равенство:

.

  • Множество всех слов в алфавите образует моноид (так называемый «свободный моноид»).
  • Множество всех непустых слов в алфавите образует полугруппу.
  • Длина конкатенации слов равна сумме длин операндов:

.

Возведение в степень

Операция конкатенации слов, подобно операции умножения чисел, порождает операцию возведения в степень. Пусть некоторое слово в алфавите , а целое неотрицательное число. Тогда -ой степенью слова , обозначаемой , будет слово в том же алфавите , определяемое равенством:

В случае , степень по определению полагается равной пустому слову, .

В информатике

Операция конкатенации определяется для типов данных, имеющих структуру последовательности (список, очередь, массив и ряд других). В общем случае, результатом конкатенации двух объектов и является объект , полученный поочерёдным добавлением всех элементов объекта , начиная с первого, в конец объекта .

Из соображений удобства и эффективности различают две формы операции конкатенации:

  1. Модифицирующая конкатенация. Результат операции формируется в левом операнде.
  2. Немодифицирующая конкатенация. Результатом является новый объект, операнды остаются неизменными.

См. также