Конкатенация

Материал из testwiki
Версия от 09:29, 23 января 2025; imported>Rubinbot (Бот: добавление заголовков в сноски; исправление двойных сносок, см. ЧаВо)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Конкатена́ция (Шаблон:Lang-la «присоединение цепями; сцепле́ние») — операция склеивания объектов линейной структуры[1], обычно строк. Например, конкатенация слов «микро» и «мир» даст слово «микромир».

В математике

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

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

Если α=a1an и β=b1bm — слова из алфавита A, то конкатенацией слов α и β, которую обозначим в этой статье как αβ, будет слово γ из того же алфавита A, определяемое равенством

γ=αβ=a1anb1bm.

Например, если α=media и β=wiki — слова из алфавита A={a,b,c,,z}, содержащем все буквы латинского алфавита, то

γ=αβ=mediawiki=mediawiki.

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

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

εα=αε=α.

  • Множество A* всех слов в алфавите образует моноид (так называемый Шаблон:Нп5).
  • Множество A*{ε} всех непустых слов в алфавите образует полугруппу.
  • Длина (количество букв) конкатенации слов равна сумме длин операндов:

|αβ|=|α|+|β|.

Итерации

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

γ=αn=ααn

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

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

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

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

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

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

См. также

Шаблон:Wiktionary

Примечания

Шаблон:Примечания


Шаблон:Compu-prog-stub Шаблон:Math-stub Шаблон:Нет ссылок