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

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
В математике: Заменил (+) на ⊕
Метки: отменено с мобильного устройства из мобильной версии
отклонены последние 9 изменений: возврат отпатрулированной версии (странные тексты)
Метка: ручная отмена
Строка 1: Строка 1:
'''Конкатена́ция''' ({{lang-la|concatenatio}} «присоединение цепями; сцепле́ние») — операция склеивания объектов линейной структуры, обычно строк. Например, конкатенация слов «микро» и «мир» даст слово «микромир». Или другое определение как ряд связанных идей или событий.
'''Конкатена́ция''' ({{lang-la|concatenatio}} «присоединение цепями; сцепле́ние») — операция склеивания объектов линейной структуры, обычно строк. Например, конкатенация слов «микро» и «мир» даст слово «микромир».


== В математике ==
== В математике ==
'''Конкатенация''' — [[бинарная операция]], определённая на [[слово#В математике|словах]] данного [[алфавит#В математике|алфавита]]. Обозначения:
Операцию конкатенации обозначают по-разному. Некоторые обозначают её как плюс заключённый в круг ⊕, некоторые как две вертикальные линии, например:
1||2=12;
12||34=1234;
(1+2)||(3×4)=3||12=312.(число a, посредством конкатенации с числом b даёт некое третье число ab).
<!--(Информацию, содержащуюся в данном абзаце могу подкрепить лишь высказываниями Мэтта Паркера ( https://en.m.wikipedia.org/wiki/Matt_Parker ) в трёх его видео на сайте YouTube. Не уверен, можно ли это считать достоверным источником.)-->

Также '''Конкатенация''' — [[бинарная операция]], определённая на [[слово#В математике|словах]] данного [[алфавит#В математике|алфавита]]. Обозначения:
* <math>A</math> — алфавит, набор букв;
* <math>A</math> — алфавит, набор букв;
* <math>\alpha</math>, <math>\beta</math>, <math>\gamma</math> — слова, составленные из букв;
* <math>\alpha</math>, <math>\beta</math>, <math>\gamma</math> — слова, составленные из букв;
Строка 16: Строка 10:
<center>
<center>
<math>
<math>
\gamma = \alpha\cdot\beta = a_1\ldots a_n b_1 \ldots b_m.</math>
\gamma = \alpha\cdot\beta = a_1\ldots a_n b_1 \ldots b_m</math>.
</center>
</center>


Строка 23: Строка 17:
<center>
<center>
<math>
<math>
\gamma = \alpha \cdot \beta = media \cdot wiki = mediawiki .
\gamma = \alpha \cdot \beta = media \cdot wiki = mediawiki
</math>
</math>.
</center>
</center>


Строка 34: Строка 28:
<center>
<center>
<math>
<math>
\varepsilon \cdot \alpha = \alpha \cdot \varepsilon = \alpha.</math>
\varepsilon \cdot \alpha = \alpha \cdot \varepsilon = \alpha</math>.
</center>
</center>


Строка 43: Строка 37:
<center>
<center>
<math>
<math>
|\alpha\cdot\beta| = |\alpha| + |\beta| .
|\alpha\cdot\beta| = |\alpha| + |\beta|
</math>
</math>.
</center>
</center>


Строка 73: Строка 67:
* [[Перебор по словарю]]
* [[Перебор по словарю]]


{{compu-prog-stub}}
{{нет ссылок|дата=26 мая 2021}}
{{math-stub}}
{{rq|sources}}


[[Категория:Математические операции]]
[[Категория:Математические операции]]

Версия от 15:55, 6 ноября 2021

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

В математике

Конкатенация — бинарная операция, определённая на словах данного алфавита. Обозначения:

  •  — алфавит, набор букв;
  • , ,  — слова, составленные из букв;
  • и  — записанные подряд и пронумерованные буквы двух слов.

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

.

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

.

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

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

.

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

.

Итерации

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

(повтор слова раз). Пример: «a»3="aaa".

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

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

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

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

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

См. также