![](/img/trans.png)
[英]How to create a boost property map between rdkit molecular bond graph edges and BGL biconnected component identifiers?
[英]BGL graph with map on edges list
我正在嘗試使用 Boost Graph Library 創建一些特定的結構。 我需要有帶有輸入和輸出端口的節點(頂點)。 每個輸出端口可以連接到其他節點的任何輸入端口。 我希望能夠檢查特定的輸出或輸入端口是否連接到任何其他端口。
這個想法是在 adjacency_list 中使用 std::map 作為 OutEdgeList 。
根據: http : //www.boost.org/doc/libs/1_52_0/libs/graph/doc/using_adjacency_list.html#sec :choosing-graph-type 我只能選擇 std::vector 之一, std::list、std::slist、std::set、std::multiset 和 std::hash_set。 (您可以選擇 mapS 作為類型,但它實現為 std::set 並且我無法通過鍵獲取值)
我有幾個問題:
謝謝!
我終於切換到Lemon 圖形庫,它不像 BGL 那樣 hacky
我不明白為什么 map 不能用作存儲傳出邊緣的數據結構。 Map 的迭代器的工作方式與std::vector
等類似。要處理傳入的邊,每個頂點上需要 2 個映射。 AFAIK BGL 支持頂點上的兩個列表。
我建議你修改(hack)BGL,看看會發生什么。 變化可能不小。 您必須為您的新型容器提供 adjacency_list 專業化。 這很可能會奏效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.