1
0
forked from 131/lab6_list

init commit

This commit is contained in:
dzruyk
2022-04-23 01:35:06 +03:00
commit 6d1c299a16
18 changed files with 4294 additions and 0 deletions

48
README.txt Normal file
View File

@@ -0,0 +1,48 @@
Базовые структуры данных. Список
--------------------------------
* Склонировать репозиторий https://timp.pw/121/lab5_list.git
(если репозиторий уже склонирован -- пропустить этот шаг ^_^)
В этом задании необходимо дописать функции для работы с двусвязным списком.
Двусвязный список -- структура данных, которая имеет вид
Описание структуры данных в файле list.h
Вам необходимо реализовать некоторые функции в файле ./list.c
и пройти тесты (описанные в ./list_test.c).
Команда для сборки проекта -- make
Команда для запуска тестов -- make test
* Необходимо реализовать следующие функции(короткое описание функций можно
подсмотреть в list.h):
list_clear
list_push_front
list_len
Эти функции проверяет тест test_list_stage1
list_push_back
list_get
list_insert
list_pop_front
list_pop_back
list_remove
Эту функцию проверяет тест test_list_remove
list_reverse
Эту функцию проверяет тест test_list_reverse
(Опционально, но очень желательно)
Для работы вам могут понадобится следующие библиотечные функции:
* malloc(size_t size) -- функция, динамически выделяющая size байт и возвращающая
указатель на выделенный кусок
* realloc(void *ptr, size_t size) -- функция изменяющая размер выделенного куска памяти
на вход принимает указатель на предыдущий выделенный кусок.
возвращает укзаатель на заново выделенную память.
Все предыдущие данные в ptr остаются без изменений