PYTHON АЛГОРИТМ ПРИМА

Python - один из самых популярных языков программирования, благодаря своей простоте и гибкости. Существует множество алгоритмов, которые можно реализовать на Python. Один из таких алгоритмов - алгоритм Прима, используемый в теории графов для поиска минимального остовного дерева.

Алгоритм Прима начинается со случайной вершины в графе. Затем он просматривает все смежные ребра и выбирает ребро с наименьшим весом. Это ребро добавляется в остовное дерево. Затем он продолжает этот процесс, добавляя новые ребра в дерево, пока все вершины не будут покрыты.

В Python алгоритм Прима может быть реализован с помощью словарей и списка смежности. Например:

graph = { 'A': {'B': 2, 'D': 5}, 'B': {'A': 2, 'C': 3}, 'C': {'B': 3, 'D': 1}, 'D': {'A': 5, 'C': 1}}def prim(graph): visited = set() edges = [] start_node = list(graph.keys())[0] visited.add(start_node) for key in graph[start_node]: edges.append([start_node, key, graph[start_node][key]]) while edges: edges = sorted(edges, key=lambda x: x[2]) min_edge = edges.pop(0) if min_edge[1] not in visited: visited.add(min_edge[1]) for key in graph[min_edge[1]]: if key not in visited: edges.append([min_edge[1], key, graph[min_edge[1]][key]]) return visitedprint(prim(graph))

Этот код создает граф и затем находит минимальное остовное дерево с помощью алгоритма Прима. Он возвращает список посещенных вершин.

В итоге, алгоритм Прима на Python позволяет легко находить минимальное остовное дерево в графе.

Алгоритм Прима

#7. Алгоритм Прима (ближайшего соседа) - Алгоритмы на Python

Алгоритм Прима

#6. Алгоритм Краскала (Kruskal's algorithm) - Алгоритмы на Python

Учим python за 7 часов! Уроки Python Полный курс обучения программированию на python с нуля

Однопроходные алгоритмы на python. Часто нужны на собеседованиях

BLGPG-78EA204E85A1-24-09-19-05

Новые материалы: