Состав работы

material.view.file_icon
material.view.file_icon 930(3).docx
material.view.file_icon Screenshot_551.jpg
material.view.file_icon Screenshot_552.jpg
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word
  • Программа для просмотра изображений

Описание

Лабораторной работе №3. Алгоритмы и структуры данных.
Тема: Деревья. ЛЭТИ. 2020

Цель работы
Исследование алгоритмов для работы с двоичным деревом
Задание
В двоичном дереве сделать обратную разметку, обойти дерево в глубину и подсчитать количество левых листьев
Постановка задачи и описание решения
Для представления дерева в памяти предложен естественный способ – разветвляющийся список. Узлы дерева – объекты, связи между которыми осуществляются через указатели. Для создания дерева достаточно объявить корень, членами которого являются левый и правый указатели на узлы дерева. Для работы с деревом удобнее иметь отдельный класс “дерево”, в котором собираются данные о всем дереве и функции-члены для работы с ним, в то время как для узлов сделать отдельный класс и сделать его дружественным для класса “дерево”
В программе под левым листом понимается узел, который находится в указателе left предыдущего узла и у которого отсутствуют сыновья. То есть если у узла нет сыновей, он единственный сын предыдущего узла, но при этом он находится в указателе right, левым листом его считать нельзя!
Итак, в программе первым делом создается дерево. Функция создания дерева вызывает рекурсивную функцию создания узла.
Для создания дерева в памяти применяется прямой алгоритм обхода (для графов общего вида – обход в глубину. Для дерева эти термины эквивалентны). Первым шагом алгоритма является проверка необходимости создания узла. Если ответ положительный, узел создается, и в нем заполняются информационные поля. Далее заполняются поля указателей на каждого сына: для получения значения указателя алгоритм запускается рекурсивно. Результат – указатель на вновь созданный узел или нуль, если узел не создан
После создания дерева вызывается функция его обхода в глубину. Я решил модернизировать эту функцию, добавив в нее возможность нахождения левых листьев дерева. Для этого создается стек узлов дерева, в которое вносятся и обрабатываются необходимые узлы. Если у очередного узла у его левого сына отсутствуют сыновья, то счетчик левых листьев увеличивается на единицу.
В работе я решил не использовать перемещающий конструктор и перемещающее присваивание, поскольку в методичке написано: “сделать невозможным использование тех конструкторов, которые на самом деле не нужны”


Содержание
Введение ........................................................................................................ 3
Задание ........................................................................................................... 3
Постановка задачи и описание решения ..................................................... 3
Контрольные тесты ...................................................................................... 4
Вывод ............................................................................................................. 6
Список использованных источников........................................................... 7
Текст программы ........................................................................................... 8

Дополнительная информация

2020
Лабораторной работе №4. Алгоритмы и структуры данных. Тема: Графы. ЛЭТИ.
Лабораторной работе №4. Алгоритмы и структуры данных. Тема: Графы. ЛЭТИ. Вариант 35 Содержание Введение ........................................................................................................ 3 Задание ........................................................................................................... 3 Постановка задачи и описание решения ..................................................... 3 Контрольные тесты ..........................................................
User DiKey : 23 марта 2023
75 руб.
Лабораторной работе №4. Алгоритмы и структуры данных. Тема: Графы. ЛЭТИ.
Лаборатоной работе №3 по дисциплине АЛГОРИТМЫ И СТРУКТУРЫ ДАННЫХ. Тема ДЕРЕВЬЯ.
Лаборатоной работе №3 по дисциплине АЛГОРИТМЫ И СТРУКТУРЫ ДАННЫХ. Тема ДЕРЕВЬЯ. Задание 1. Написать и отладить программу для работы с деревьями по предложенному преподавателем варианту индивидуального задания (табл. П.2.2). Программа должна выводить на экран изображение дерева с разметкой его вершин, сделанной заданным способом, а под ним — последовательность меток вершин при обходе дерева и результат вычисления заданного параметра. Можно взять за основу учебный пример. 2. Сделать узел дерева
User DiKey : 28 марта 2023
100 руб.
Лаборатоной работе №3 по дисциплине АЛГОРИТМЫ И СТРУКТУРЫ ДАННЫХ. Тема ДЕРЕВЬЯ.
Лабораторной работе №3. по дисциплине Алгоритмы и структуры данных. Тема Рекурсивные алгоритмы.
Лабораторной работе №3. по дисциплине Алгоритмы и структуры данных. Тема Рекурсивные алгоритмы. Теоретическая часть Обход дерева - вид обхода графа, обусловливающий процесс посещения каждого узла структуры дерева данных ровно один раз. Такие обходы классифицируются по порядку, в котором узлы посещаются. Алгоритмы относятся к двоичным деревьям, но могут быть обобщены и для других деревьев. В отличие от связных списков, одномерных массивов и других линейных структур данных, которые канонически
User DiKey : 28 марта 2023
100 руб.
Лабораторной работе №3. по дисциплине Алгоритмы и структуры данных. Тема Рекурсивные алгоритмы.
Лабораторной работе №4. По дисциплине Алгоритмы и структуры данных. Тема Построение минимального остовного дерева.
Лабораторной работе №4. По дисциплине Алгоритмы и структуры данных. Тема Построение минимального остовного дерева. ЦЕЛЬ РАБОТЫ Ознакомление с вариантами реализации алгоритмов на графах на примере задачи построения минимального остовного дерева. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ Алгоритм Прима Алгоритм начинается с выбора произвольной вершины. Она принимается за часть построенного минимального остовного дерева. Далее в цикле в каждой итерации рассматриваются только те ребра исходного графа, одн
User DiKey : 28 марта 2023
100 руб.
Лабораторной работе №4. По дисциплине Алгоритмы и структуры данных. Тема Построение минимального остовного дерева.
Алгоритмы и структуры данных. Лабораторная работа №3. (Вариант №2)
Лабораторная работа №3 Тема: Бинарные деревья Цель работы: изучить понятие и способы описания бинарных деревьев и освоить их приемы программирования алгоритмов их обработки. Задание На основе материалов конспекта лекций (раздел 5) и рекомендуемой литературы изучить теоретический материал по программированию бинарных деревьев. Сформировать дерево (деревья) двоичного поиска и вывести его (их) на экран. Выполнить обработку данных на этом бинарном дереве (табл. 3, задание 1) и вывести обработанно
User Milka189904 : 21 сентября 2021
250 руб.
Алгоритмы и структуры данных. Лабораторная работа №3. (Вариант №2)
Лабораторная работа №3 по дисциплине "Алгоритмы и структуры данных". Вариант №3
Лабораторная работа №3 Тема: Бинарные деревья Цель работы: изучить понятие и способы описания бинарных деревьев и освоить их приемы программирования алгоритмов их обработки. Задание На основе материалов конспекта лекций (раздел 5) и рекомендуемой литературы изучить теоретический материал по программированию бинарных деревьев. Сформировать дерево (деревья) двоичного поиска и вывести его (их) на экран. Выполнить обработку данных на этом бинарном дереве (табл. 3, задание 1) и вывести обработанно
User Андрей459 : 24 января 2022
890 руб.
Лабораторная работа №3 по дисциплине "Алгоритмы и структуры данных". Вариант №3
Лабораторная работа № 3 по дисциплине: Алгоритмы и структуры данных. Вариант №14
Вариант №14 Лабораторная работа №3 - Бинарные деревья Цель работы: изучить понятие и способы описания бинарных деревьев и освоить их приемы программирования алгоритмов их обработки. Задание 1. На основе материалов конспекта лекций (раздел 5) и рекомендуемой литературы изучить теоретический материал по программированию бинарных деревьев. 2. Сформировать дерево (деревья) двоичного поиска и вывести его (их) на экран. 3. Выполнить обработку данных на этом бинарном дереве (табл. 3, задание 1) и вы
User IT-STUDHELP : 14 апреля 2021
300 руб.
Лабораторная работа № 3 по дисциплине: Алгоритмы и структуры данных. Вариант №14 promo
Лабораторная работа №3 по дисциплине "Алгоритмы и структуры данных" (вариант 6)
Тема: Бинарные деревья Цель работы: изучить понятие и способы описания бинарных деревьев и освоить их приемы программирования алгоритмов их обработки. Задание 1. На основе материалов конспекта лекций (раздел 5) и рекомендуемой литературы изучить теоретический материал по программированию бинарных деревьев. 2. Сформировать дерево (деревья) двоичного поиска и вывести его (их) на экран. 3. Выполнить обработку данных на этом бинарном дереве (табл. 3, задание 1) и вывести обработанное дерево на экран
User Greenberg : 28 августа 2020
140 руб.
ММА/ИДО Иностранный язык в профессиональной сфере (ЛТМ) Тест 20 из 20 баллов 2024 год
ММА/ИДО Иностранный язык в профессиональной сфере (ЛТМ) Тест 20 из 20 баллов 2024 год Московская международная академия Институт дистанционного образования Тест оценка ОТЛИЧНО 2024 год Ответы на 20 вопросов Результат – 100 баллов С вопросами вы можете ознакомиться до покупки ВОПРОСЫ: 1. We have … to an agreement 2. Our senses are … a great role in non-verbal communication 3. Saving time at business communication leads to … results in work 4. Conducting negotiations with foreigners we shoul
User mosintacd : 28 июня 2024
150 руб.
promo
Задание №2. Методы управления образовательными учреждениями
Практическое задание 2 Задание 1. Опишите по одному примеру использования каждого из методов управления в Вашей профессиональной деятельности. Задание 2. Приняв на работу нового сотрудника, Вы надеялись на более эффективную работу, но в результате разочарованы, так как он не соответствует одному из важнейших качеств менеджера - самодисциплине. Он не обязателен, не собран, не умеет отказывать и т.д.. Но, тем не менее, он отличный профессионал в своей деятельности. Какими методами управления Вы во
User studypro : 13 октября 2016
200 руб.
Особенности бюджетного финансирования
Содержание: Введение Теоретические основы бюджетного финансирования Понятие и сущность бюджетного финансирования Характеристика основных форм бюджетного финансирования Анализ бюджетного финансирования образования Понятие и источники бюджетного финансирования образования Проблемы бюджетного финансирования образования Основные направления совершенствования бюджетного финансирования образования Заключение Список использованный литературы Цель курсовой работы – исследовать особенности бюджетного фин
User Aronitue9 : 24 августа 2012
20 руб.
Программирование (часть 1-я). Зачёт. Билет №2
ЗАЧЕТ по дисциплине “Программирование (часть 1)” Билет 2 Определить значение переменной y после работы следующего фрагмента программы: a = 3; b = 2 * a – 10; x = 0; y = 2 * b + a; if ( b > y ) or ( 2 * b < y + a ) ) then begin x = b – y; y = x + 4 end; if ( a + b < 0 ) and ( y + x > 2 ) ) then begin x = x + y; y = x – 2 end;
User sibsutisru : 3 сентября 2021
200 руб.
Программирование (часть 1-я). Зачёт. Билет №2
up Наверх