回覆列表
  • 1 # 使用者928021938244

    structvlist

    {

    intindex;//弧的鄰接頂點

    intvalue;//權值

    vlist*next;

    };

    structvnode//頂點

    {

    charnumber;//頂點資訊

    vlist*link;

    };

    structGraph

    {

    vnodegnode[4];

    intvnbers,lnbers;//定點數和弧數

    };

    圖的鄰接表表示法類似於樹的孩子連結串列表示法。對於圖G中的每個頂點vi,該方法把所有鄰接於vi的頂點vj鏈成一個帶頭結點的單鏈表,這個單鏈表就稱為頂點vi的鄰接表(AdjacencyList)。

    1.鄰接表的結點結構

    (1)表結點結構

    ┌————┬———┐

    │adjvex|next│

    └————┴———┘

    鄰接表中每個表結點均有兩個域:

    ①鄰接點域adjvex

    存放與vi相鄰接的頂點vj的序號j。

    ②鏈域next

    將鄰接表的所有表結點鏈在一起。

    注意:

    若要表示邊上的資訊(如權值),則在表結點中還應增加一個數據域。

    (2)頭結點結構

    ┌————┬—————┐

    │vertex│firstedge│

    └————┴—————┘

    頂點vi鄰接表的頭結點包含兩個域:

    ①頂點域vertex

    存放頂點vi的資訊

    ②指標域firstedge

    vi的鄰接表的頭指標。

    注意:

    ①為了便於隨機訪問任一頂點的鄰接表,將所有頭結點順序儲存在一個向量中就構成了圖的鄰接表表示。

    ②有時希望增加對圖的頂點數及邊數等屬性的描述,可將鄰接表和這些屬性放在一起來描述圖的儲存結構。

    由於你說的不太清楚,你可以看看這些,對你編寫有幫助.

  • 中秋節和大豐收的關聯?
  • suit fit match的用法有什麼不同?