Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
c++ 3 minimax.docx
Скачиваний:
6
Добавлен:
25.09.2019
Размер:
99.99 Кб
Скачать

33) Связные структуры данных: стек- описание и операции со стеком.

Структура - это набор данных, где данные могут быть разного типа. Переменные, которые содержаться в структуре называются членами или полями структуры. Структуры можно определять с помощью ключевого слова struct. Динамические структуры данных (связные структуры данных) – стек, список, очередь, дерево (бинарное), граф общего вида. Динамические – т.к. данные размещаются в динамической памяти, а не в статической. Связные – т.к. в каждой структуре содержатся указатели, данные в памяти не упорядочены (не имеют индекса).

Организация стека: «Первым пришел – последним вышел»

Стек (с т. зр. программирования) – тип, созданный пользователем.

  • Операции со стеком:

    • Включение элемента в стек;

    • Извлечение верхнего элемента из стека;

    • Просмотр стека.

top указывает на вершину стека; inf 1 – информационное поле 1;next поле, которое указывает на следующий элемент стека (если next указывает на 0, значит этот элемент последний)

Описание: struct steck {int inf; struct steck *next;}; steck *top=0;

35) Связные структуры данных: очередь- описание и операции.

Очередь – линейный двусвязный список. Описание: struct street { int inf; struct street* pred, * succ;} * last=0, * first=0;

Организация очереди: «Первым пришел – первым вышел»

  • Операции с очередью:

    • Добавление элемента после последнего;

    • Удаление элемента из очереди для обработки;

    • Просмотр очереди (подобно просмотру стека);

    • Разрушение очереди (подобно разрушению стека).

first элемент, который стоит первым в очереди на обработку;

last элемент, который стоит последним в очереди на обработку;

predполе, которое указывает на предыдущий элемент очереди;

succ поле, которое указывает на следующий элемент очереди;

37) Связные структуры данных: список- описание и операции.

Динамический список (односвязный) организован как стек. Описание: struct list {int inf; struct steck *next;}; steck *top=0;

Операции со списком:

    • Все операции, применимые со стеком;

    • Добавление элемента в произвольное место списка:(Перед указанным; После указанного;)

    • Исключение любого элемента из списка: (Указанного; После указанного. )

top указывает на вершину стека; inf 1 – информационное поле 1;next поле, которое указывает на следующий элемент стека (если next указывает на 0, значит этот элемент последний)

7) Массивы. Описание одномерных и многомерных массивов, инициализация.

Массив представляет собой структуру данных, которая позволяет одной переменной хранить несколько значений одного и того же типа. При объявлении массива должны быть указаны имя массива, тип элементов, а также их количество.

Программы могут передавать переменные-массивы в функции точно так же, как они передают любой другой параметр.

Ввод и вывод данных в массив осуществляется поэлементно. C++ всегда использует 0 для индекса первого элемента.

Описание массивов: Одномерный: тип имя [кол-во элементов] - int mas[100];

Двухмерный: тип имя [строки] [столбцы] - float mas [5][4]

Инициализация массивов при объявлении.

При объявлении массива вы можете указать первоначальные значения, поместив их между левой и правой фигурными скобками, следующими за знаком равенства. int mas[5] = { 1, 2, 3, 4, 5}; или float mas[3] = { 2.00. 3.70, 5.11 };

Инициализация двухмерных массивов: int mas[2][3]= { {1,2,3} , {4,5,6} }; или : int mas[2][3]= { 1,2,3; 4,5,6}};

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]