Как найти границу графа? - PullRequest
       49

Как найти границу графа?

0 голосов
/ 24 декабря 2018

Я хотел бы найти границу графа, каждой вершине которого соответствует 2D-координата (x, y).Граница пути должна быть замкнутым многоугольником и покрывать большую часть площади.Например, на рисунке граничный путь будет выглядеть следующим образом: 1-2-3-4-1 enter image description here

Я могу сделать это, сначала удалив все тупики, а затемначните с самого левого узла, затем я продолжу поворачивать направо, пока не доберусь до начальной точки.Например, после удаления всех тупиков (5,8,7) и продолжения удаления тупиков (6) я получаю узлы 1,2,3 и 4. После этого я начинаю с самого левого узла, узла 1.Я поворачиваю направо на узел 2. На узле 2 у меня есть 2 варианта: либо перейти на узел 3, либо на узел 4. Но я продолжаю поворачивать направо, поэтому я перейду к узлу 3. На узле 3 у меня есть только возможность перейти наузел 4. Точно так же в узле 4 у меня есть только 1 вариант, чтобы вернуться к узлу 1. Так как я заканчиваю с узлом 1. Я делаю вывод, что путь 1-2-3-4.

Однако мне интересно, есть ли «магическая» функция в каких-либо существующих библиотеках теории графов, которая может сделать это элегантным способом?Заранее спасибо.

Тим

...