Задание № 4115

Студент

Кшнякин Александр

Задача

Списки-палиндромы

Состояние

Открыто

Назначено

12.04.2022, 05:50

Реализовать функцию, проверяющую двусвязный список на палиндромность (палиндром одинаково читается как с начала, так и с конца).

int dlist_palindrome(DList *head, int (*cmp)(Pointer d1, Pointer d2));

Функция возвращает 1 (палиндром) или 0 (не палиндром).

Функция по указателю cmp сравнивает два элемента и возвращает 0, если они равны. Она используется для определения палиндромности. Например, для списка строк она будет реализована через strcmp.

Пустой список и список из 1 элемента являются палиндромами.

Протестировать реализацию с помощью assert для не менее двух различных функций сравнения.

Задача опирается на задачу «Двусвязные списки».

Действия