В школуСуббота, 28.06.2025, 13:17

Приветствую Вас Гость | RSS
Главная | Каталог статей | Регистрация | Вход
Меню сайта

Категории раздела
Анализы уроков [10]
Анализы проыеденных уроков для разных предметов
Конспекты [41]
Планы конспекты и просто конспекты уроков разных тематик
Документация [12]
Примеры заполнений разного рода документов
Мероприятия [13]
Тексты, планы и сценарии мероприятий
Контроль знаний [117]
Контрольные и самостоятельные работы, вопроссы, тесты, лабораторные работы и т.д
Литература [84]
Статьи и другая образовательная литература
Рефераты и Доклады [25]
Рефераты, доклады, дипломные проекты и т.д
Разное [10]
Статьи с других сайтов предоставленніе нам.

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Главная » Статьи » Контроль знаний

ЛР2 Тема. Бинарные кучи.

Лабораторная работа № 2

 

Тема. Бинарные кучи.

Цель:

-         изучить устройство и принцип заполнения бинарных куч

-         научиться использовать на практике основные алгоритмы по обработке бинарных куч

 

Теоретическая часть

 

Полным бинарным деревом называется такое дерево, в котором каждая вершина имеет не более двух «сыновей», а заполнение вершин осуществляется в порядке от верхних уровней к нижним, причем на одном уровне заполнение вершин производится слева направо.

Количество вершин в полном бинарном дереве высоты может изменяться от2­h (минимум) до 2­h+1-1 (максимум).

 

Полное бинарное дерево с К вершинами удобно реализуется с помощью простого массива. Для этого необходимо представить, что у элемента с индексом iсыновьями являются элементы с индексами 2i и 2i + 1, причем 2i ≤ K и 2i + 1≤ K.

Вполне очевидно, что «отцом» вершины с индексом j является вершина с индексом , но следует помнить, что у корневой вершины «отца» нет.

Кроме массива удобно хранить еще одну переменную, которая определяет количество вершин в дереве. Пусть это будет переменная Num.

 

Основным свойством (инвариантом) структуры данных куча является условие, что элементы в ней организованы таким образом, что приоритет любой вершины не ниже приоритета каждого из ее «сыновей».

Так если в качестве приоритета рассматривать время, которое элемент может «ожидать», то приоритет вершины будет тем выше, чем меньше время возможного ожидания.

 

Бинарная куча – это полное бинарное дерево, для которого выполняется основное свойство структуры данных куча.

Это свойство требует выполнения условия, что для любой тройки элементов с индексами i, 2i, 2i + 1 элемент с индексом i должен иметь максимальный приоритет (т.е. в куче из трех элементов более сильный всегда сверху).

 

 

Ход работы

 

1.      Разработайте программу в соответствии со следующими требованиями:

а)      создание бинарной кучи (случайное / ручной ввод);

б)      добавление элемента в бинарную кучу;

в)      удаление элемента из бинарной кучи;

г)       все операции должны быть наглядно представлены.

Важно: обязательно соблюдение инварианта!

 

2.      Напишите отчет, содержащий исходные тексты программ.

Категория: Контроль знаний | Добавил: Armageddets (26.10.2012)
Просмотров: 1048 | Теги: Тема. Бинарные кучи. | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Мини-чат

Форма входа

Поиск


Copyright MyCorp © 2025
Сделать бесплатный сайт с uCoz