Уничтожение дублирующихся элементов в списке
Отменено
23.04.2020, 12:16
07.05.2020, 10:55
Реализовать функцию, убирающую дублирующиеся элементы в односвязном списке.
void slist_unique(SList *head, int (*cmp)(Pointer d1, Pointer d2));
Функция по указателю cmp
сравнивает два элемента и возвращает 0, если они равны. Она используется для проверки на дубли. Например, для списка строк она будет реализована через strcmp
.
Пример: список A->B->B->A->D->A->Q будет урезан до A->B->D->Q.
Протестировать реализацию с помощью assert
для не менее двух различных функций сравнения.
Задача опирается на «Связанные списки».