SlideShare a Scribd company logo
Лекция 5 Абстрактные структуры данных
Таблицы Таблица  – это набор элементов, содержащих  ключ  – отличительный признак для поиска элементов, и  тело  – сопутствующую информацию. Примеры таблиц: 1) Таблица функции  f ( x ):  ключ – аргумент  x , тело –  значение  f ( x ). 2)  Словарь: ключ – слово, тело – его перевод. 3) Таблица имен компилятора:  ключ – имя объекта программы (например, переменной), тело – его характеристики (тип, адрес, значение и т.п.).
Основные операции  над таблицами: Инициализация (подготовка к работе). Поиск элемента по ключу – основная операция (входит в другие операции). Включение в таблицу данного элемента. Исключение из таблицы элемента с данным ключом. Изменение в таблице тела элемента с данным ключом. Распечатка элементов таблицы в порядке, определяемом ключами. Сортировка таблицы по возрастанию или убыванию ключей.
Типы таблиц: статическая (постоянная) и динамическая (меняющаяся при выполнении программы); внутренняя (в ОП) и внешняя (во внешней памяти, в файле); последовательная,  с прямым доступом,  древовидная.
Очереди Очередь  – это упорядоченная последовательность элементов, в которой операции включения и исключения элементов выполняются по принципу “первым  пришел – первым ушел”, т.е. включение всегда происходит в конец очереди, а исключение  – из начала очереди.
Основные операции над очередью: Инициализация (создание пустой очереди). Включение элемента в очередь. Исключение элемента из очереди.
Представление очереди в виде циклического вектора
Представление очереди в виде списка Очередь можно хранить в виде списка с двумя указателями: начала и конца очереди . 1 -й элемент   2 -й элемент   n -й элемент указатель   указатель начала   конца .   .   .
Стеки Стек  ( stack ) - это упорядоченная последовательность элементов, в которой выполняются операции включения и исключения элемента по принципу LIFO (Last-In-First-Out) - "последним пришел - первым ушел",  т.е. включение и исключение всегда происходят в одном конце. Этот конец называют  верхом , противоположный -  дном  стека.
Стек
Типовые операции над стеком:  1.  Инициализация  (создание, подготовка к  работе);  2.  Вталкивание   (включение) элемента -  PUSH;  3.  Выталкивание  (исключение) элемента -  POP;  4.  Проверка   пустоты  стека;  5.  Проверка переполнения  стека;  6.  Доступ к вершине  (получение / изменение  значения последнего поступившего  элемента).
Представление стека в виде вектора
Представление стека в виде списка
Деки Дек  (deque - double-ended queue: двусторонняя очередь) - это упорядоченная последовательность элементов, в которой включение и исключение элемента могут выполняться в обоих концах. Дек является обобщением очереди и стека.

More Related Content

PPT
списки (2008)
vivalis2010
 
PPT
Java. Интерфейс Queue - очередь
Unguryan Vitaliy
 
PPSX
Разработка баз данных - введение
Александр Шамрай
 
PPTX
Декларативно функциональный стиль в PHP
Parallels
 
PPTX
.NET программирование - 2 Типы данных
Alexander Morozov
 
PPTX
8 повторение основ алгоритмизации и программирования
Средняя школа № 10 г. Слонима
 
PPT
0037
JIuc
 
PDF
Запросы
Artyukhova
 
списки (2008)
vivalis2010
 
Java. Интерфейс Queue - очередь
Unguryan Vitaliy
 
Разработка баз данных - введение
Александр Шамрай
 
Декларативно функциональный стиль в PHP
Parallels
 
.NET программирование - 2 Типы данных
Alexander Morozov
 
8 повторение основ алгоритмизации и программирования
Средняя школа № 10 г. Слонима
 
0037
JIuc
 
Запросы
Artyukhova
 

Viewers also liked (10)

DOC
5 sl sign
Zhanna Kazakova
 
PPT
лабораторная работа №2
Zhanna Kazakova
 
DOC
зад2 теория
Zhanna Kazakova
 
DOC
задачи для самостоятельного решения
Zhanna Kazakova
 
PPT
лабораторная работа №8
Zhanna Kazakova
 
PPT
лабораторная работа №1
Zhanna Kazakova
 
PPT
дм прз-гл-1-рр-26
Zhanna Kazakova
 
PPT
лаб раб 6
Zhanna Kazakova
 
DOC
1 uprsign
Zhanna Kazakova
 
PPT
лабораторная работа №9
Zhanna Kazakova
 
5 sl sign
Zhanna Kazakova
 
лабораторная работа №2
Zhanna Kazakova
 
зад2 теория
Zhanna Kazakova
 
задачи для самостоятельного решения
Zhanna Kazakova
 
лабораторная работа №8
Zhanna Kazakova
 
лабораторная работа №1
Zhanna Kazakova
 
дм прз-гл-1-рр-26
Zhanna Kazakova
 
лаб раб 6
Zhanna Kazakova
 
1 uprsign
Zhanna Kazakova
 
лабораторная работа №9
Zhanna Kazakova
 
Ad

Similar to лекция 5 (20)

PPT
лекция 5
student_kai
 
PPT
лекция 4
Zhanna Kazakova
 
PDF
лек9 10
Anastasia Snegina
 
PDF
Лекция 4: Стеки и очереди
Mikhail Kurnosov
 
PDF
Лекция 4. Стеки и очереди
Mikhail Kurnosov
 
PPT
Лекция 3 Элементарные структуры данных Часть 1
simple_people
 
PPT
01 линейные структуры данных
Fedor Tsarev
 
PDF
Лекция 4: Стек. Очередь
Mikhail Kurnosov
 
PPT
лекция 4
student_kai
 
PDF
C++ Базовый. Занятие 07.
Igor Shkulipa
 
PDF
ОПК № 5 – Составные типы данных, списки
Vladimir Parfinenko
 
PPTX
Stack
dianatrif
 
PPTX
стек
Tasya Garizan
 
PDF
Абстрактные типы данных, контейнеры и списки
Olga Maksimenkova
 
PPT
Lecture 2
Anastasia Snegina
 
PDF
Абстрактные типы данных, последовательности, списки
Olga Maksimenkova
 
PDF
Абстрактные типы данных. Списки
Olga Maksimenkova
 
PPT
практика 13
student_kai
 
лекция 5
student_kai
 
лекция 4
Zhanna Kazakova
 
лек9 10
Anastasia Snegina
 
Лекция 4: Стеки и очереди
Mikhail Kurnosov
 
Лекция 4. Стеки и очереди
Mikhail Kurnosov
 
Лекция 3 Элементарные структуры данных Часть 1
simple_people
 
01 линейные структуры данных
Fedor Tsarev
 
Лекция 4: Стек. Очередь
Mikhail Kurnosov
 
лекция 4
student_kai
 
C++ Базовый. Занятие 07.
Igor Shkulipa
 
ОПК № 5 – Составные типы данных, списки
Vladimir Parfinenko
 
Stack
dianatrif
 
стек
Tasya Garizan
 
Абстрактные типы данных, контейнеры и списки
Olga Maksimenkova
 
Абстрактные типы данных, последовательности, списки
Olga Maksimenkova
 
Абстрактные типы данных. Списки
Olga Maksimenkova
 
практика 13
student_kai
 
Ad

More from Zhanna Kazakova (20)

PPTX
презентация диагностика
Zhanna Kazakova
 
PPT
лаб. работа №1
Zhanna Kazakova
 
PPT
лекция 26
Zhanna Kazakova
 
PPT
лекция 25
Zhanna Kazakova
 
PPT
лекция 24
Zhanna Kazakova
 
PPT
лекция 23
Zhanna Kazakova
 
PPT
лекция 22
Zhanna Kazakova
 
PPT
лекция 22
Zhanna Kazakova
 
PPT
лекция 21
Zhanna Kazakova
 
PPT
лекция 20
Zhanna Kazakova
 
PPT
лекция 18
Zhanna Kazakova
 
PPT
лекция 19
Zhanna Kazakova
 
PPT
лекция 18
Zhanna Kazakova
 
PPT
лекция 17
Zhanna Kazakova
 
PPT
лекция 16
Zhanna Kazakova
 
PPT
лекция 15
Zhanna Kazakova
 
PPT
лекция 14
Zhanna Kazakova
 
PPT
лекция 13
Zhanna Kazakova
 
PPT
лекция 12
Zhanna Kazakova
 
PPT
лекция 11
Zhanna Kazakova
 
презентация диагностика
Zhanna Kazakova
 
лаб. работа №1
Zhanna Kazakova
 
лекция 26
Zhanna Kazakova
 
лекция 25
Zhanna Kazakova
 
лекция 24
Zhanna Kazakova
 
лекция 23
Zhanna Kazakova
 
лекция 22
Zhanna Kazakova
 
лекция 22
Zhanna Kazakova
 
лекция 21
Zhanna Kazakova
 
лекция 20
Zhanna Kazakova
 
лекция 18
Zhanna Kazakova
 
лекция 19
Zhanna Kazakova
 
лекция 18
Zhanna Kazakova
 
лекция 17
Zhanna Kazakova
 
лекция 16
Zhanna Kazakova
 
лекция 15
Zhanna Kazakova
 
лекция 14
Zhanna Kazakova
 
лекция 13
Zhanna Kazakova
 
лекция 12
Zhanna Kazakova
 
лекция 11
Zhanna Kazakova
 

лекция 5

  • 1. Лекция 5 Абстрактные структуры данных
  • 2. Таблицы Таблица – это набор элементов, содержащих ключ – отличительный признак для поиска элементов, и тело – сопутствующую информацию. Примеры таблиц: 1) Таблица функции f ( x ): ключ – аргумент x , тело – значение f ( x ). 2) Словарь: ключ – слово, тело – его перевод. 3) Таблица имен компилятора: ключ – имя объекта программы (например, переменной), тело – его характеристики (тип, адрес, значение и т.п.).
  • 3. Основные операции над таблицами: Инициализация (подготовка к работе). Поиск элемента по ключу – основная операция (входит в другие операции). Включение в таблицу данного элемента. Исключение из таблицы элемента с данным ключом. Изменение в таблице тела элемента с данным ключом. Распечатка элементов таблицы в порядке, определяемом ключами. Сортировка таблицы по возрастанию или убыванию ключей.
  • 4. Типы таблиц: статическая (постоянная) и динамическая (меняющаяся при выполнении программы); внутренняя (в ОП) и внешняя (во внешней памяти, в файле); последовательная, с прямым доступом, древовидная.
  • 5. Очереди Очередь – это упорядоченная последовательность элементов, в которой операции включения и исключения элементов выполняются по принципу “первым пришел – первым ушел”, т.е. включение всегда происходит в конец очереди, а исключение – из начала очереди.
  • 6. Основные операции над очередью: Инициализация (создание пустой очереди). Включение элемента в очередь. Исключение элемента из очереди.
  • 7. Представление очереди в виде циклического вектора
  • 8. Представление очереди в виде списка Очередь можно хранить в виде списка с двумя указателями: начала и конца очереди . 1 -й элемент 2 -й элемент n -й элемент указатель указатель начала конца . . .
  • 9. Стеки Стек ( stack ) - это упорядоченная последовательность элементов, в которой выполняются операции включения и исключения элемента по принципу LIFO (Last-In-First-Out) - "последним пришел - первым ушел", т.е. включение и исключение всегда происходят в одном конце. Этот конец называют верхом , противоположный - дном стека.
  • 11. Типовые операции над стеком: 1. Инициализация (создание, подготовка к работе); 2. Вталкивание (включение) элемента - PUSH; 3. Выталкивание (исключение) элемента - POP; 4. Проверка пустоты стека; 5. Проверка переполнения стека; 6. Доступ к вершине (получение / изменение значения последнего поступившего элемента).
  • 12. Представление стека в виде вектора
  • 14. Деки Дек (deque - double-ended queue: двусторонняя очередь) - это упорядоченная последовательность элементов, в которой включение и исключение элемента могут выполняться в обоих концах. Дек является обобщением очереди и стека.