Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задания к лабораторным.doc
Скачиваний:
45
Добавлен:
20.06.2014
Размер:
462.85 Кб
Скачать

2.3. Лабораторная работа №3 «Программирование алгоритмов реализации и обработки графов»

Цель работы

Получение навыков реализации алгоритмов обхода графов и построения минимальных остовных деревьев.

Задание

Осуществить программную реализацию алгоритма обработки графа, выбрав из табл. 3 приложения алгоритм и начальные параметры, в соответствии с заданным номером варианта. В программе необходимо предусмотреть удобный пользовательский интерфейс, позволяющий создавать граф (пользователем или генерировать автоматически), выполнять требуемый алгоритм и визуализировать этапы выполнения алгоритма и результаты.

Контрольные вопросы

1. Определение графа.

2. Алгоритмы обхода графа в глубину и по уровням.

4. Алгоритм Дейкстры-Прима построения МОД.

5. Алгоритм Крускала построения МОД.

3. Содержание отчета

1. Титульный лист.

  1. Задание кафедры, соответствующее варианту, номер варианта.

  2. Цель работы.

  3. Алгоритм.

  4. Листинг программы с необходимыми комментариями.

  5. Результаты выполнения.

  6. Выводы.

Отчет может также включать краткие теоретические сведения.

4. Библиографический список

  1. Ахо, А. В. Структуры данных и алгоритмы / А. В. Ахо, Дж. Хопкрофт, Дж. Д. Ульман. – М.: "Вильямс", 2000. – 384 с.

  2. Кондратьева, С. Д. Введение в структуры данных / С. Д. Кондратьева. – М.: Изд-во МГТУ им. Н.Э. Баумана, 2000. – 376 с.

  3. Вирт, Н. Алгоритмы и структуры данных / Н. Вирт. ­– М.: Мир, 1989. – 360 с.

  4. Макконнелл, Дж. Основы современных алгоритмов / Дж. Макконнелл. – М.: Техносфера, 2004. – 368 с.

  5. Кнут, Д. Э. Искусство программирования, том 3. Сортировка и поиск / Д. Э. Кнут. – М.: "Вильямс", 2000. – 832 с.

Приложение

Таблица 1

Задания к лабораторной работе №1

№ варианта

Ключ

Удаляемый узел

Распределение

Реализация

Степень дерева

Метод обхода

int

char[]

заменяется самым левым дочерним узлом

заменяется самым правым дочерним узлом

равномерное

нормальное

связный список дочерних узлов

список дочерних узлов, два массива

список дочерних узлов, массив структур, 3 поля

указатели

4

5

6

7

прямой

обратный

симметричный

1

+

+

+

+

+

+

2

+

+

+

+

+

+

3

+

+

+

+

+

+

4

+

+

+

+

+

+

5

+

+

+

+

+

+

6

+

+

+

+

+

+

7

+

+

+

+

+

+

8

+

+

+

+

+

+

9

+

+

+

+

+

+

10

+

+

+

+

+

+

11

+

+

+

+

+

+

12

+

+

+

+

+

+

13

+

+

+

+

+

+

14

+

+

+

+

+

+

15

+

+

+

+

+

+

16

+

+

+

+

+

+

17

+

+

+

+

+

+

18

+

+

+

+

+

+

19

+

+

+

+

+

+

20

+

+

+

+

+

+

21

+

+

+

+

+

+

22

+

+

+

+

+

+

23

+

+

+

+

+

+

24

+

+

+

+

+

+

25

+

+

+

+

+

+

26

+

+

+

+

+

+

27

+

+

+

+

+

+

28

+

+

+

+

+

+

29

+

+

+

+

+

+

30

+

+

+

+

+

+

31

+

+

+

+

+

+

32

+

+

+

+

+

+

33

+

+

+

+

+

+

34

+

+

+

+

+

+

35

+

+

+

+

+

+

36

+

+

+

+

+

+

37

+

+

+

+

+

+

Таблица 2

Задания к лабораторной работе №2

ключ

Вид дерева

int

char

float

int[]

char[]

float[]

АВЛ, реализация

В, порядок

1

+

+, указатели

2

+

+, указатели

3

+

+, указатели

4

+

+, указатели

5

+

+, указатели

6

+

+, указатели

7

+

+, 3

8

+

+, 4

9

+

+, 8

10

+

+, 6

11

+

+, 7

12

+

+, 9

13

+

+, массив

14

+

+, 6

15

+

+, 4

16

+

+, массив

17

+

+, 5

18

+

+, массив

19

+

+, массив

20

+

+, 4

21

+

+, 7

22

+

+, 3

23

+

+, массив

24

+

+, массив

25

+

+, 5

26

+

+, 9

27

+

+, 4

28

+

+, связный список дочерних узлов

29

+

+, связный список дочерних узлов

30

+

+, связный список дочерних узлов

31

+

+, связный список дочерних узлов

32

+

+, связный список дочерних узлов

33

+

+, связный список дочерних узлов

34

+

+, 8

35

+

+, 10

36

+

+, список дочерних узлов, два массива

37

+

+, список дочерних узлов, два массива

Таблица 3

Задания к лабораторной работе №3

Алгоритм

Граф

Степень графа

обхода в глубину

обхода по уровням

построения МОД Дейкстры-Прима

построения МОД Крускала

ориентированный

неориен-тированный

4

5

6

7

1

+

+

+

2

+

+

+

3

+

+

+

4

+

+

+

5

+

+

+

6

+

+

+

7

+

+

+

8

+

+

+

9

+

+

+

10

+

+

+

11

+

+

+

12

+

+

+

13

+

+

+

14

+

+

+

15

+

+

+

16

+

+

+

17

+

+

+

18

+

+

+

19

+

+

+

20

+

+

+

21

+

+

+

22

+

+

+

23

+

+

+

24

+

+

+

25

+

+

+

26

+

+

+

27

+

+

+

28

+

+

+