Лабораторная работа №5. Структуры и алгоритмы обработки данных. Нахождение эйлерова цикла в графе.
Состав работы
|
|
Работа представляет собой файл, который можно открыть в программе:
- Microsoft Word
Описание
Лабораторная работа №5. Структуры и алгоритмы обработки данных. Нахождение эйлерова цикла в графе.
Постановка задачи:
Найти эйлеров цикл в заданном графе.
Теория
Эйлеров путь (эйлерова цепь) в графе — это путь, проходящий по всем рёбрам графа и притом только по одному разу.
Эйлеров путь в графе существует тогда и только тогда, когда граф связный и содержит не более чем 2 вершины нечетной степени.
Если в связном графе нет вершин нечетной степени, то каждый эйлеров путь называется циклом.
Алгоритм нахождения эйлерова цикла графа
1. Если алгоритм обхода в глубину не посетил все вершины, то
1.1. Выводим сообщение «Граф не содержит эйлерова цикла, так как граф несвязный».
2. Иначе
2.1. Если количество ребер каждой какой-либо вершины нечетное, то
2.1.1. Выводим сообщение «Граф не содержит эйлерова цикла, так как не все вершины имеют четную степень».
2.2. Иначе
2.2.1. Заносим первую вершину во временный стек.
2.2.2. Пока временный стек не пустой:
2.2.2.1. Присваиваем временной вершине значение вершины стека.
2.2.2.2. Если количество ребер временной вершины больше нуля, то
2.2.2.2.1. Заносим во временный стек первую смежную вершину.
2.2.2.2.2. Удаляем ребро, соединяющую временную вершину и ее первую смежную вершину.
2.2.2.3. Иначе
2.2.2.3.1. Вынимаем из временного стека и заносим в стек эйлерова цикла.
2.2.2.4. Выводим эйлеров цикл на экран
Входные данные:
• vertices[] – массив вершин графа.
• edges[] – массив ребер графа.
Промежуточные данные:
• stack – стек для промежуточного хранения вершин.
• cycl – стек для хранения вершин эйлерова пути.
• node – переменная для временного хранения вершины.
• adjacent – переменная для временного хранения первой смежной вершины.
Выходные данные:
• statusCycl– текстовое поле для вывода последовательности вершин эйлерова цикла.
• cycl – стек для хранения вершин эйлерова пути графа.
Постановка задачи:
Найти эйлеров цикл в заданном графе.
Теория
Эйлеров путь (эйлерова цепь) в графе — это путь, проходящий по всем рёбрам графа и притом только по одному разу.
Эйлеров путь в графе существует тогда и только тогда, когда граф связный и содержит не более чем 2 вершины нечетной степени.
Если в связном графе нет вершин нечетной степени, то каждый эйлеров путь называется циклом.
Алгоритм нахождения эйлерова цикла графа
1. Если алгоритм обхода в глубину не посетил все вершины, то
1.1. Выводим сообщение «Граф не содержит эйлерова цикла, так как граф несвязный».
2. Иначе
2.1. Если количество ребер каждой какой-либо вершины нечетное, то
2.1.1. Выводим сообщение «Граф не содержит эйлерова цикла, так как не все вершины имеют четную степень».
2.2. Иначе
2.2.1. Заносим первую вершину во временный стек.
2.2.2. Пока временный стек не пустой:
2.2.2.1. Присваиваем временной вершине значение вершины стека.
2.2.2.2. Если количество ребер временной вершины больше нуля, то
2.2.2.2.1. Заносим во временный стек первую смежную вершину.
2.2.2.2.2. Удаляем ребро, соединяющую временную вершину и ее первую смежную вершину.
2.2.2.3. Иначе
2.2.2.3.1. Вынимаем из временного стека и заносим в стек эйлерова цикла.
2.2.2.4. Выводим эйлеров цикл на экран
Входные данные:
• vertices[] – массив вершин графа.
• edges[] – массив ребер графа.
Промежуточные данные:
• stack – стек для промежуточного хранения вершин.
• cycl – стек для хранения вершин эйлерова пути.
• node – переменная для временного хранения вершины.
• adjacent – переменная для временного хранения первой смежной вершины.
Выходные данные:
• statusCycl– текстовое поле для вывода последовательности вершин эйлерова цикла.
• cycl – стек для хранения вершин эйлерова пути графа.
Дополнительная информация
2020
Похожие материалы
Структуры и алгоритмы обработки данных. Лабораторная работа №5
sibguter
: 5 июня 2018
Тема: Хэширование и поиск
Цель работы: Изучение возможности хэширования данных для организации поиска.
Порядок выполнения работы:
Разработать подпрограмму хеширования массива целых чисел методом прямого связывания и подпрограмму поиска в хэш-таблице элемента по заданному ключу. Вывести на экран построенную хэш-таблицу.
Реализовать подпрограмму хеширования массива целых чисел методом открытой адресации. Для разрешения коллизий использовать линейные и квадратичные пробы. Вывести на экран заполн
49 руб.
Лабораторная работа №5. Структуры и алгоритмы обработки данных
tanzor
: 8 июля 2014
Порядок выполнения работы:
Написать программу “Телефонный справочник”, которая обрабатывает данные об абонентах телефонной станции. Каждый абонент имеет имя, адрес, телефонный номер. В программе описать массив абонентов (назовем его справочник). В справочнике должно быть не менее 20 элементов, которые заполняются либо программно, либо считываются из файла.
С помощью индексов и фильтров (номер задания выбирается по последней цифре шифра) – упорядочить справочник по телефонному номеру по убывани
10 руб.
Структуры и алгоритмы обработки данных. Лабораторная работа №5
piligrim-24
: 26 октября 2011
1. Построить хэш-таблицу методом линейных проб для слов заданного текста. Текст находится в некотором файле (примерно 200 слов). Экспериментально определить минимально необходимый объем хэш-таблицы и число коллизий при построении.
2. Построить хэш-таблицу методом квадратичных проб для слов заданного текста. Файл с текстом должен быть тот же, что и п.1. Экспериментально определить минимально необходимый объем хэш-таблицы и число коллизий при построении.
3. Заполнить следующую таблицу полученными
50 руб.
Структуры и алгоритмы обработки данных. Лабораторная работа 5
jashma28
: 8 октября 2011
Задание:
1. Построить хэш-таблицу методом линейных проб для слов заданного текста. Текст находится в некотором файле (примерно 200 слов). Экспериментально определить минимально необходимый объем хэш-таблицы и число коллизий при построении.
2. Построить хэш-таблицу методом квадратичных проб для слов заданного текста. Файл с текстом должен быть тот же, что и п.1. Экспериментально определить минимально необходимый объем хэш-таблицы и число коллизий при построении.
3. Заполнить следующую таблицу по
800 руб.
Структуры и алгоритмы обработки данных. Лабораторная работа №5. Вариант №4
tpogih
: 13 сентября 2014
Тема: Хэширование и поиск.
Цель работы: Освоить методы построения хэш-таблиц и поиска с помощью хэш-таблиц.
Порядок выполнения работы:
1. Построить хэш-таблицу методом линейных проб для слов заданного текста. Текст находится в некотором файле (примерно 200 слов). Экспериментально определить минимально необходимый объем хэш-таблицы и число коллизий при построении.
2. Построить хэш-таблицу методом квадратичных проб для слов заданного текста. Файл с текстом должен быть тот же, что и п.1. Эксперим
45 руб.
Структуры и алгоритмы обработки данных (2 часть). Лабораторная работа №5
nick0x01
: 21 июня 2014
Тема: Построение дерева почти оптимального поиска
Цель работы: Освоить методы построения ДОП приближенными методами.
Порядок выполнения работы:
1. Разработать процедуры построения ДОП приближенными методами А1 и А2.
2. Вычислить средневзвешенную высоту построенных ДОП для n=10, 50, 100, 200, 400 (n -количество вершин в дереве) и заполнить таблицу следующего вида. Проанализировать полученные результаты, сравнить их между собой.
69 руб.
«Структуры и алгоритмы обработки данных. Часть 2». Лабораторная работа №5.
wchg
: 10 сентября 2013
Лабораторная работа 5
Тема: Построение дерева почти оптимального поиска
Цель работы: Освоить методы построения ДОП приближенными методами.
Порядок выполнения работы:
Разработать процедуры построения ДОП приближенными методами А1 и А2.
Вычислить средневзвешенную высоту построенных ДОП для n=10, 50, 100, 200, 400 (n -количество вершин в дереве) и заполнить таблицу следующего вида. Проанализировать полученные результаты, сравнить их между собой.
79 руб.
Структуры и алгоритмы обработки данных (1- я часть). Лабораторная работа №5
fitaria
: 28 августа 2013
Лабораторная работа 5. Хэширование и поиск.
Цель работы: Освоить методы построения хэш-таблиц и поиска с помощью хэш-таблиц.
Порядок выполнения работы:
Построить хэш-таблицу методом линейных проб для слов заданного текста. Текст находится в некотором файле (примерно 200 слов). Экспериментально определить минимально необходимый объем хэш-таблицы и число коллизий при построении.
Построить хэш-таблицу методом квадратичных проб для слов заданного текста. Файл с текстом должен быть тот же, что и п.1
40 руб.
Другие работы
Ощущения - первичная форма отражения действительности
mortis
: 28 марта 2012
Реферат
по дисциплине «Психология и педагогика».
Тема: «Ощущения - первичная форма отражения действительности».
Содержание.
1. Понятие ощущения и его процесс...............................................3
2. Классификация ощущений.......................................................7
3. Общие свойства ощущений......................................................9
4. Список литературы................................................................11
Ощущение, чувственный опыт — простейший пси
100 руб.
Деталировка-Сборочный чертеж-Балка опорная для установки вибратора на вибросито: Фланец соеденительный, Плита опорная-Чертежи-Графическая часть-Оборудование для бурения нефтяных и газовых скважин-Курсовая работа-Дипломная работа
as.nakonechnyy.92@mail.ru
: 23 июня 2016
Деталировка-Сборочный чертеж-Балка опорная для установки вибратора на вибросито: Фланец соеденительный, Плита опорная-Чертежи-(Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Оборудование для бурения нефтяных и газовых скважин-Курсовая работа-Дипломная работа
485 руб.
Курсовая работа по дисциплине «Базы данных». Вариант №07.
teacher-sib
: 27 августа 2020
Постановка задания
В рамках выполнения курсовой работы для заданной предметной области необходимо:
• сформулировать цель проектирования базы данных;
• описать возможного пользователя базы данных;
• определить круг запросов и задач, которые предполагается решать с использованием созданной базы данных;
• построить реляционную модель и выполнить ее нормализацию;
• создать спроектированную базу данных в среде выбранной СУБД;
• разработать приложение для реализации запросов и решения задач;
• оценит
500 руб.
Деловой немецкий язык (2 часть) зачет
Antipenko2016
: 12 октября 2018
Тест по немецкому языку
Часть 2
1. Aus diesem Artikel haben wir _____ Neues erfahren.
а) nicht b) kein c) nichts d) keines
2. Hast du deiner Freundin das Bild geschenkt? - Ja, ich habe _____ geschenkt.
a) ihr es b) es ihr c) ihn ihr d) ihr ihn
3. _____ nicht so laut!
a) Spreche b) Sprichst c) Sprich d) Sprechen
4. Suchen Sie einen Laden? In der Sadowajastraße ist _____.
a) ein b) einer c) welche d) welches
5. _____ häng
150 руб.