Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Связные списки и другие структуры.






Для работы с массивом необходимо знать его размерность, хотя бы в начале работы программы. Если это данное не известно то можно либо сильно увеличить резервируемую память, либо рисковать ограниченность пространства для данных в массиве. Данную проблему решают связные списки. Связанный список это структура данных, содержащая из взаимосвязанных блоков. Идея состоит в том, что бы создать класс, который поддерживал бы данные определённого типа, среди которых был бы указатель, связанный с другим объектом этого класса.

Существуют три основных вида списков:

§ Однонаправленные списки (очередь, стек);

§ Двунаправленные списки (дек и т.д.);

§ Деревья.

Названия образуются от количества связующих список указателей в каждом объекте списка.

Список состоит из узлов, узлы представляют собой абстрактные классы. Начало — это начало обработки промежуточных узлов списка, которые отвечают за хранение данных, указатель узла - “хвост” обязательно имеет значение null (0).

// программа работы с динамическими списками при помощи классов.

// однонаправленные списки, двунаправленные списки и деревья.


#include < iostream.h>

#include < iomanip.h>

#include < fstream.h>

ofstream fout(" rez.txt");

ifstream fin(" rez.txt");

Class Data

{

public:

Data ();

~Data(){delete fam; }

int Compare(const Data &);

Void Show();

private:

char fam[25];

Float ball;

};

Data:: Data()

{

cout< < " \n Введите фамилию и средний балл: ";

cin> > fam> > ball;

}

void Data:: Show()

{ cout.width(25);

cout.fill(' ');

cout< < fam;






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.