0
私はどのようにグラフのノードを保存するかを解決しようとしています。すべてのノードは、より多くの祖先とより多くの子孫を持つことができます。グラフの節を保存する最良の方法
struct Node
{
int m_Value;
int m_Index; // end Node in m_Nodes
int m_Length; // actual size of m_Nodes and m_Prev (for realloc)
Node* m_Nodes; // dynamic array (descendants)
Node* m_Prev; // dynamic array (ancestors)
}
私はこれが最善の方法であるのかはわからない。今私は、この構造体を持っています。グラフは次のようになります。
1
2 3
4
Edges: [1,2], [1,3], [2,4], [3,4], [4,1]
ありがとうございます。
* int m_Length; //実際のm_Nodesとm_Prevのサイズ(reallocの場合)* - 独自のサイズを知っている 'std :: vector'のようなコンテナクラスを使用した場合、これは必要ありません。 – PaulMcKenzie
あなたのグラフはDirected Acyclic Graphまたは一般的なグラフですか?メモリリークを回避するには、ノードを別のデータ構造体に記録する必要があります。 – Franck
@PaulMcKenzieはい、わかっています。私はそれなしで実装することを望みます。私が間違って私はそれに気付かなかった。 – Levin