An open API service indexing awesome lists of open source software.

https://github.com/andcool-systems/removing_redundant_vertices

Удаление избыточных вершин графа
https://github.com/andcool-systems/removing_redundant_vertices

Last synced: 2 months ago
JSON representation

Удаление избыточных вершин графа

Awesome Lists containing this project

README

        

# Удаление избыточных вершин графа
Код производит удаление вершин графа, которые содержат только 2 пути, так как они считаются избыточными.

Основной файл: `main.py`, содержит весь скрипт и тестовые входные данные.
### Подробное описание
При выполнении скрипта, мы проходим циклом `for` по графу, находим вершины, у которых лишь 2 связи и создаём путь между двумя соседними ей вершинами, удаляя избыточную.
### Пример:
**Исходный граф:**

**A — B — С**

|Вершина |Пути из этой вершины|
|---------------|--------------------|
|A | [B] |
|B | [A, C] |
|C | [B] |


Как видно из таблицы, вершина B имеет только 2 пути, следственно является избыточной

**Итоговый граф, после выпонения алгоритма:**

**A — С**

|Вершина |Пути из этой вершины|
|---------------|--------------------|
|A | [C] |
|C | [A] |


В результате выполнения скрипта, он удалил избыточную вершину B, соединив вместе ближайшие ей вершины.