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

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Конкатенація (об'єднання) — операція склеювання об'єктів лінійної структури, зазвичай рядків. Наприклад, конкатенація слів «мікро» і «світ» дасть слово «мікросвіт».

У математиці[ред. | ред. код]

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

.

Наприклад, якщо і слова в алфавіті , що містить всі літери латинського алфавіту, то

.

Властивості конкатенації[ред. | ред. код]

  • Операція конкатенації асоціативна.
  • Операція конкатенації некомутативна. Дійсно, , але . Від перестановки операндів змінюється результат операції, що й означає її некомутативність.
  • Порожнє слово, , є нейтральним елементом (одиницею) операції конкатенації. Тобто, якщо - порожнє слово, то для будь-якого слова виконана рівність:

.

  • Множина всіх слів у алфавіті утворює моноїд (так звана «вільна напівгрупа»).
  • Множина всіх непустих слів у алфавіті утворює напівгрупу.
  • Довжина конкатенації слів дорівнює сумі довжин операндів:

.

Піднесення до степеня[ред. | ред. код]

Операція конкатенації слів, подібно операції множення чисел, породжує операцію піднесення до степеня. Нехай деяке слово в алфавіті , а ціле невід'ємне число. Тоді -м ступенем слова , що позначається , буде слово в тому ж алфавіті , визначене рівністю:

У випадку , степінь за визначенням буде рівною порожньому слову, .

В інформатиці[ред. | ред. код]

Операція конкатенації визначається для типів даних, які мають структуру послідовності (список, чергу, масив і ряд інших). У загальному випадку, результатом конкатенації двох об'єктів і є об'єкт , отриманий почерговим додаванням всіх елементів об'єкта , починаючи з початку, в кінець об'єкта .

З міркувань зручності й ефективності розрізняють дві форми операції конкатенації:

  1. Модифікуюча конкатенація. Результат операції формується в лівому операнді.
  2. Немодифікуюча конкатенація. Результатом є новий об'єкт, операнди залишаються незмінними.