リンクされたリストの配列を作成し、各頂点を配列のインデックスで表すことを理解しています。しかし、各頂点に関連付けられた実際のデータをどのように保存すればよいのでしょうか? たとえば、頂点が 1. John 2. Mary 3. Sunny で、辺が (John,Mary) と (Mary,Sunny) の有向グラフがある場合、通常の方法で隣接リストを作成できます ( 1,2) と (2,3) をエッジとして使用します。しかし、1、2、3 に関連付けられた名前はどこに保存すればよいのでしょうか?
私は何をしましたか?
名前とクラス「edgenode」のオブジェクトへのポインターを格納するクラス「頂点ノード」を作成しました。次に、クラス「頂点ノード」のオブジェクトを含む配列を作成しました。「edgenode」クラスには、1) この配列のインデックス (インデックスはエッジの 2 番目のエンドポイントを表す)、および 2) 「edgenode」の次のオブジェクトへのポインターが含まれます。次に、頂点 (名前) とエッジ (名前のペア) をグラフに追加しました。プログラムは正しく実行されます。
これが有効なアプローチなのか、名前を個別に配列に格納する方が良いのか、それとも他の方法があるのか を知りたいですか?基本的に、私はそれが従来どのように行われているか知りたいですか?
PS: STL や Boost、または同様のものを回答に使用することは避けてください。前もって感謝します。