Если у меня есть список ребер, уже отсортированных по весу (предположим, что у каждого ребра есть вес, который равен или больше, чем у предыдущего ребра), например [['A', 'D'], ['B ',' C '], [' A ',' B '], [' C ',' D ']], как я могу создать новый список, представляющий минимальное остовное дерево, где циклов не существует? Так что в этом случае я бы пошел вниз по своему первоначальному списку и продолжил бы добавлять ребра, если они не делают цикл или пока не будет достигнута каждая вершина. Кроме того, мне не разрешено использовать импорт для этой проблемы. Я думаю, что рекурсия может быть ответом, но я не совсем уверен.
Так что в приведенном выше примере я бы хотел, чтобы в окончательном списке были [['A', 'D'], ['B', 'C'], ['A', 'B']]. Список не включает ['C', 'D'], потому что это создаст цикл.