2
我正在使用Boost庫來處理C++中的圖。當增加一條邊時,使增強圖僅包含兩個頂點
boost::adjacency_list <boost::vecS, boost::vecS, boost::bidirectionalS> DiGraph;
DiGraph graph;
boost::add_edge(10000, 20000, graph);
包含20001個頂點和一條邊。然而,我只需要有兩個頂點10000
和20000
。
一種可能的方法是將數據與節點相關聯(例如從this example);然而,也許有一個更簡單的方法來做到這一點。如果頂點不是(0,1),我怎麼能有一個包含2個頂點和一個邊的圖?
在python networkx
我只會使用graph.add_edge(10000, 20000)
並會得到所需的行爲。任何線索如何在C++中做到這一點?
默認行爲的確有索引標識頂點。所以,如果只在頂點10和頂點20之間創建一條邊,那麼該圖就會保存21個頂點。 你需要的是一個帶有自由標識符的頂點模型,所以,是的,研究鏈接的例子,它包含你所需要的。好處是你可以在頂點填充任何你想要的東西。 – kebs
嗯,我寧願避免這種情況。 –