2022-04-16 03:26:02 +03:00
|
|
|
|
Базовые структуры данных. Вектор
|
|
|
|
|
|
--------------------------------
|
2022-04-16 03:24:45 +03:00
|
|
|
|
|
|
|
|
|
|
* Склонировать репозиторий https://timp.pw/121/lab4_ivec.git
|
|
|
|
|
|
(если репозиторий уже склонирован -- пропустить этот шаг ^_^)
|
|
|
|
|
|
|
|
|
|
|
|
В этом задании мы должны реализовать вектор для типа int.
|
|
|
|
|
|
Вектор -- это динамический массив данных, который может менять свой размер
|
|
|
|
|
|
в процессе работы.
|
|
|
|
|
|
|
|
|
|
|
|
Описание структуры данных ivector в файле vector.h
|
|
|
|
|
|
Вам необходимо реализовать некоторые функции в файле ./vector.c
|
|
|
|
|
|
и пройти тесты (описанные в ./vector_test.c).
|
|
|
|
|
|
|
|
|
|
|
|
Команда для сборки проекта -- make
|
|
|
|
|
|
Команда для запуска тестов -- make test
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Необходимо реализовать следующие функции
|
|
|
|
|
|
vector_len
|
|
|
|
|
|
vector_data
|
|
|
|
|
|
vector_resize
|
|
|
|
|
|
vector_initdata
|
|
|
|
|
|
|
|
|
|
|
|
vector_set
|
|
|
|
|
|
vector_get
|
|
|
|
|
|
vector_push
|
|
|
|
|
|
vector_pop
|
|
|
|
|
|
|
|
|
|
|
|
(Опционально, но очень желательно)
|
|
|
|
|
|
vector_insert
|
|
|
|
|
|
vector_del
|
|
|
|
|
|
|
|
|
|
|
|
|