Имаме следния вход за алгоритъма:
Графика G
без цикли (известна още като spanning-tree), където всеки възел има свързано тегло.
Искам да намеря независим набор S
такъв, че:
- Никакви два елемента в
S
не образуват ребро вG
- Няма друго възможно подмножество, което да отговаря на горното условие, за което има по-голямо тегло от
S[0] + S[1] + ... + S[n-1]
(къдетоlen(S)==n
).
Това е псевдокодът на високо ниво, който имам досега:
MaxWeightNodes(SpanningTree S):
output = {0}
While(length(S)):
o = max(node in S)
output = output (union) o
S = S \ (o + adjacentNodes(o))
End While
Return output
Може ли някой да ми каже веднага дали съм направил някакви грешки или дали този алгоритъм ще ми даде резултата, който искам?