Автор: cheops (31.03.2007 в 14:26)
Списки основаны на укзателях... если массив - это набор блоков, расположенных последовательно рядом друг с другом, то список - это набор блоков, разбросанных по всей памяти и связанных друг с другом указателями. Исчезает возноможность пользоваться индексом, однако появляется гибкость - не нужнен неразрывный кусок памяти для его хранения и очень легко вставить новый элемент в середину. Элемент списка как правило состоит из структуры или объекта, в котором имеется два указателя - на предыдущий и последующий элемент, ну и полезная нагрузка: то это элемент хранит. Например
typedef struct element
{
int number;
// Ссылка на следующий элемент списка
struct element *next;
// Ссылка на предыдущий элемент списка
struct element *prev;
} element;
|
PS Подробно создание списка разбирается в нашей книге
"C++ мастер-класс в задачах и примерах".
PPS Существуют готовые списки, например, контейнер list в библиотеке STL.