我的問題是: 考慮兩棵樹P和R.我需要匹配P的最深可能級別上的節點和樹R最深可能級別上的節點。這意味着,樹中的所有節點都像從最一般到最具體的分層關係。應找到樹P與樹R最具體的匹配。 需要最優化的方法。找到另一棵樹上的一棵樹的節點
例如,讓我們有一個審閱者面板。每個評論者都有他自己的興趣點,從一般興趣到特定的喜歡從能源到沼氣工廠。現在有一篇文章要與評論者的興趣相匹配。將找到與論文類別最具特定匹配的評論者。每篇論文也有從最普通類別到完全特定類別的類別樹。
我的問題是: 考慮兩棵樹P和R.我需要匹配P的最深可能級別上的節點和樹R最深可能級別上的節點。這意味着,樹中的所有節點都像從最一般到最具體的分層關係。應找到樹P與樹R最具體的匹配。 需要最優化的方法。找到另一棵樹上的一棵樹的節點
例如,讓我們有一個審閱者面板。每個評論者都有他自己的興趣點,從一般興趣到特定的喜歡從能源到沼氣工廠。現在有一篇文章要與評論者的興趣相匹配。將找到與論文類別最具特定匹配的評論者。每篇論文也有從最普通類別到完全特定類別的類別樹。
編輯:深度差異
Gret答案感謝您的幫助,需要一個解釋:如果多於一個任務可以分配給代理,該怎麼辦?匈牙利語算法似乎並沒有解決這個問題 – user2538255
@ user2538255:如果允許,那就簡單多了:只要把每個任務分配給x,然後將它分配給最大化s(x,y)的代理y。 –
您可以使用Trie解決它,其中根具有最普遍的類別,其子類具有更具體的類別,子類具有越來越多的特定類別。您需要從根開始找到最長的匹配。
這是一個有趣的問題,但不是非常適合於stackoverflow。你應該首先想出一個非常明確的'最具體匹配'和'最優方法'的定義。 –
最具體的匹配例如是節點的字符串變量中最長的匹配,最優的匹配是除了簡單地在整個樹上搜索匹配之外的其他方法。我希望這可以讓問題更加清晰 – user2538255