Конкатенація (лат. concatēnāre, об'єднання, з'єднання) — в загальному сенсі - функція з'єднання двох сутностей або результат такої операції.

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

Приклади:

конкатенація слів «мікро» і «світ» дасть слово «мікросвіт». конкатенація рядків «34» та «84» дають результат «3484».

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

.

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

.

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

.

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

.

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

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

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

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

Алгоритм Алгоритм конкатенації на прикладі двох масивів наведений нижче.

Дано:

Масив з розміром . Масив з розміром . Масив з розміром , що є результатом конкатенації масивів та . Індекс масиву .

Суть алгоритму:

1. Виконати копіювання масиву в масив для :

2. Виконати копіювання масиву в масив для :

3. END

В мовах програмування

C В мові програмування C функція конкатенації рядків strcat міститься в бібліотеці <string.h> . #include <stdio.h> #include <string.h>

#define N 50

void main() { // Декларація змінної example char example[N]; // Копіювати рядок в змінну example strcpy(example, "Кон"); // Виконати конкатенацію значення змінної example strcat(example, "катенація"); // Вивести на екран змінну example printf("%s\n", example); }

Примітки