Научная статья на тему 'НАХОЖДЕНИЕ ОСТОВНОГО ДЕРЕВА МИНИМАЛЬНОГО ВЕСА С ПРИМЕНЕНИЕМ АЛГОРИТМА КРАСКАЛА И АЛГОРИТМА ПРИМА'

НАХОЖДЕНИЕ ОСТОВНОГО ДЕРЕВА МИНИМАЛЬНОГО ВЕСА С ПРИМЕНЕНИЕМ АЛГОРИТМА КРАСКАЛА И АЛГОРИТМА ПРИМА Текст научной статьи по специальности «Математика»

CC BY
96
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Мировая наука
Область наук
Ключевые слова
теория графов / минимальное остовное дерево / алгоритм Краскала / алгоритм Прима / graph theory / minimal spanning tree / Kraskala algorithm / Prima algorithm

Аннотация научной статьи по математике, автор научной работы — Батчаева З.Б., Биджиева А.Б., Турклиев Р.А.

В последние десятилетия прослеживается существенное увеличение заинтересованности к теории графов. Рожденный более 200 лет назад в постановлении головоломок и развлекательных задач, он стал обычным, доступным и сильным инструментом для решения обширного диапазона важных практических задач. Теория графов рассматривается как раздел дискретной математики, исследующий свойства конечных множеств с установленными отношениями между их компонентами. Как прикладная дисциплина, теория графов дает возможность определить и изучить многие технические, экономические, биологические и социальные системы. Задача материала в том, чтобы следовать, в основном, главным понятиям и итогам теории графов, необходимым для постановки и решения задач управления организационными системами.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

FINDING A SPANNING TREE OF MINIMUM WEIGHT WITH THE APPLICATION OF THE ALGORITHM KRUSKAL AND ALGORITHM PRIMA

In recent decades, there has been a significant increase in interest in graph theory. Born more than 200 years ago in solving puzzles and entertaining problems, it has become a common, accessible and powerful tool for solving a vast range of important practical problems. Graph theory is considered as a branch of discrete mathematics that studies the properties of finite sets with established relations between their components. As an applied discipline, graph theory provides an opportunity to define and study many technical, economic, biological and social systems. The task of the material is to follow, basically, the main concepts and results of graph theory, necessary for the formulation and solution of problems of management of organizational systems.

Текст научной работы на тему «НАХОЖДЕНИЕ ОСТОВНОГО ДЕРЕВА МИНИМАЛЬНОГО ВЕСА С ПРИМЕНЕНИЕМ АЛГОРИТМА КРАСКАЛА И АЛГОРИТМА ПРИМА»

УДК- 004.4

Батчаева З.Б. старший преподаватель кафедра информатики и информационных технологий

Биджиева А.Б. обучающаяся 3 курса 09.03.04- Программная инженерия

Турклиев Р.А. обучающийся 3 курса 09.03.04- Программная инженерия Северо-Кавказская государственная гуманитарно-технологи ческая академия

Россия, г. Черкесск НАХОЖДЕНИЕ ОСТОВНОГО ДЕРЕВА МИНИМАЛЬНОГО ВЕСА С ПРИМЕНЕНИЕМ АЛГОРИТМА КРАСКАЛА И АЛГОРИТМА ПРИМА

Аннотация

В последние десятилетия прослеживается существенное увеличение заинтересованности к теории графов. Рожденный более 200 лет назад в постановлении головоломок и развлекательных задач, он стал обычным, доступным и сильным инструментом для решения обширного диапазона важных практических задач. Теория графов рассматривается как раздел дискретной математики, исследующий свойства конечных множеств с установленными отношениями между их компонентами. Как прикладная дисциплина, теория графов дает возможность определить и изучить многие технические, экономические, биологические и социальные системы. Задача материала в том, чтобы следовать, в основном, главным понятиям и итогам теории графов, необходимым для постановки и решения задач управления организационными системами.

Ключевые слова: теория графов, минимальное остовное дерево, алгоритм Краскала, алгоритм Прима.

Batchaeva Z.B. Senior Lecturer

North Caucasus State Humanitarian and Technological Academy, Department of Informatics and Information Technology

Russia, Cherkessk Bidzhieva A.B. Third year student 09.03.04- Software Engineering North-Caucasian state humanitarian and technological

academy, Russia, Cherkessk Turkliev R.A. Third year student 09.03.04- Software Engineering

North-Caucasian state humanitarian and technological

academy, Russia, Cherkessk FINDING A SPANNING TREE OF MINIMUM WEIGHT WITH THE APPLICATION OF THE ALGORITHM KRUSKAL AND ALGORITHM

PRIMA.

Annotation

In recent decades, there has been a significant increase in interest in graph theory. Born more than 200 years ago in solving puzzles and entertaining problems, it has become a common, accessible and powerful tool for solving a vast range of important practical problems.

Graph theory is considered as a branch of discrete mathematics that studies the properties of finite sets with established relations between their components. As an applied discipline, graph theory provides an opportunity to define and study many technical, economic, biological and social systems. The task of the material is to follow, basically, the main concepts and results of graph theory, necessary for the formulation and solution of problems of management of organizational systems.

Key words: graph theory, minimal spanning tree, Kraskala algorithm, Prima algorithm.

Решение отдельных проблем может быть представлено в виде графа. К примеру, Женя, Дима, Максим и Алеша сыграли между собой по одной партии в шахматы. Какое количество партий было сыграно? Проанализируем решение задачи.

Женя сыграл партию с Димой, партию с Максимом и партию с Алешей - в целом три партии. Дима также сыграл три партии - с Женей, Максимом и Алешей. Однако, партию Димы с Женей мы уже посчитали. Остается добавить одну партию, которую сыграли Максим с Алешей. Исходя из этого искомое число партий равно значению выражения 3+2+1.

Нарисуем 4 точки, точки будут обозначать имена игроков. Затем соединим каждую точку с каждой точкой, который будет обозначать сыгранную партию. Посчитаем теперь количество отрезков. 4 стороны квадрата + 2 диагонали = 6 отрезков. Данная задача имеет интересную геометрическую интерпретацию, так называемый «полный граф». Решение представлено на рисунке 1.

Рисунок 1. Полный 4-вершинный граф Ответом задачи будет 6 партий. Задачи естественнонаучного или экономического содержания иногда моделируются с помощью аппарата теории графов. Рассмотрим задачи о нахождении минимального остовного дерева минимального веса с применением алгоритма Краскала и алгоритма

Прима.

В алгоритме Краскала применяется жадный подход к решению задачи, т.е. в любой момент выполнения данных алгоритмов имеется множество ребер Е', представляющее подмножество определенного минимального остовного дерева графа G. На каждом шаге алгоритмов из оставшихся ребер выбирается «лучшее» ребро, обладающее определенными свойствами, и добавляется к формируемому каркасу максимального веса. Одним из важных свойств любого ребра, добавляемого к Е', является его безопасность, т.е. то, что обновленное множество ребер Е' будет продолжать представлять подмножество некоторого минимального остовного дерева.

применением алгоритма Краскала Алгоритм Прима - это алгоритм построения минимального остовного дерева взвешенного связанного неориентированного графа.

Листинг программы на PascalABC реализующий алгоритм Прима.

Program commivoyger;

uses crt; var a:array[1..100,1..100] of integer;

posetil,q: array [1..105] of integer; n,z,c,i,j:longint;

Procedure commivoygergor;

Var ps,pe,max,min,k,I,j,x:longint;

Begin

ps:=1; pe:=1; max:=0; c:=0; k:=z;

posetil[k]:=1; q[ps]:=k;

for i:=1 to n do

for j:=1 to n do

begin

if a[i,j]>max then begin max:=a[i,j];

end; end;

max:=max+1;

while ps<=n do begin

min:=max;

for i:=1 to n do

if (a[k,i]<>0) and (posetil[i]<>1) and (a[k,i]<min) then begin

min:=a[k,i]; x:=i; end;

c:=c+a[k,x]; pe:=pe+1; q[pe]:=x;

posetil[x]:=1; ps:=ps+1;

k:=q[ps]; end;

c:=c+a[n,z]; n:=n+1;

q[n]:=q[1]; end;

begin

clrscr;

write('Введите количество городов: ');

readln(n); write('Введите город с которого следует начать');

readln(z);

for i:=1 to n do

for j:=1 to n do

begin

if (i=j) then a[i,j]:=0; if (i<j) then begin

-^^^Введите расстояния между городами (a[',i,,,,,j,,]=)');

readln(a[i,j]);

a[j,i]:=a[i,j];

end; end;

for i:=1 to n do

begin

for j:=1 to n do write(a[i,j],'':4); writeln; end; readln;

commivoygergor; writeln(,Путь: '); for i:=1 to n do write(q[i],'':4); readln; writeln('Длина'); write(c); writeln; readln; end.

Program 1 .exe

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

Использованные источники:

1. Белоусов А. И., Ткачев С.Б. Дискретная математика: учеб. для вузов . -М.: Издательство МГТУ им. Н.Э. Баумана, 2001.

2. Емеличев В.А. и др. Лекции по теории графов . - М. : Наука, 1990.

i Надоели баннеры? Вы всегда можете отключить рекламу.