
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных
- •Программирование и структуры данных

Программирование и структуры данных |
2007 г. |
Лекция 4
Таблицы.
Очереди.
Стеки.
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
1 |

Программирование и структуры данных |
2007 г. |
Таблицы
•Таблица – это набор элементов, содержащих ключ – отличительный признак для поиска элементов, и тело – сопутствующую информацию.
•Примеры таблиц:
1)Таблица функции f(x): ключ – аргумент x, тело – значение f(x).
2)Словарь: ключ – слово, тело – его перевод.
3)Таблица имен компилятора: ключ – имя объекта программы (например, переменной), тело – его характеристики (тип, адрес, значение и т.п.).
•Таблицы используются везде, где есть поиск
информации.
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
2 |

Программирование и структуры данных |
2007 г. |
Основные операции над таблицами:
•Инициализация (подготовка к работе).
•Поиск элемента по ключу – основная операция (входит в другие операции).
•Включение в таблицу данного элемента.
•Исключение из таблицы элемента с данным ключом.
•Изменение в таблице тела элемента с данным ключом.
•Распечатка элементов таблицы в порядке, определяемом ключами.
•Сортировка таблицы по возрастанию или убыванию ключей.
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
3 |

Программирование и структуры данных |
2007 г. |
Типы таблиц:
•статическая (постоянная) и динамическая (меняющаяся при выполнении программы);
•внутренняя (в ОП) и внешняя (во внешней памяти, в файле);
•последовательная, с прямым доступом, древовидная.
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
4 |

Программирование и структуры данных |
2007 г. |
Последовательные таблицы
•Последовательной (линейной) называют таблицу, в которой производится линейный поиск, т.е. последовательный перебор элементов с начала таблицы.
•Последовательные таблицы бывают сортированными и несортированными. Внутренние таблицы могут храниться в виде вектора или в виде списка.
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
5 |

Программирование и структуры данных |
2007 г. |
Очереди
•Очередь – это упорядоченная последовательность элементов, в которой операции включения и исключения элементов выполняются по принципу “первым пришел – первым ушел”, т.е. включение всегда происходит в конец очереди, а исключение – из начала очереди.
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
6 |

Программирование и структуры данных |
2007 г. |
Основные операции над очередью:
•Инициализация (создание пустой очереди).
•Включение элемента в очередь.
•Исключение элемента из очереди.
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
7 |

Программирование и структуры данных |
2007 г. |
Представление очереди в виде циклического вектора
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
8 |

Программирование и структуры данных |
2007 г. |
Программирование операций на языке С
•1. Описание очереди
•#define N 50 /* максимальное число
элементов в очереди */
•тип_элемента Och [N+1]; /* вектор,
|
содержащий очередь */ |
• int un, uk; |
/* указатели начала и |
|
конца очереди */ |
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
9 |

Программирование и структуры данных |
2007 г. |
•2. Инициализация (создание пустой очереди)
•un = uk = 0;
Бикмурзина А.Р., Захарова З.Х., Хохлов Д.Г. |
КГТУ (КАИ), кафедра АСОИУ |
1 |
|
|
0 |