日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

图Graph

發布時間:2023/12/13 综合教程 32 生活家
生活随笔 收集整理的這篇文章主要介紹了 图Graph 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

存儲結構:

1、鄰接矩陣存儲

typedef struct

{

  char vex[MAXVEX];//頂點數

  int arc[MAXVEX][MAXVEX];//鄰接矩陣

  int numVextexes,numEdges;//頂點數和邊數

}MGraph;

邊數相對節點較少時會浪費內存,因此可以使用鏈表實現

2、鄰接表

此為邊表

typedef struct EdgeNode

{

  int adjvex;//存儲頂點對應的下標

  int weight;

  struct EdgeNode* next;//指向下一個鄰接點

}EdgeNode;

此為頂點表

typedef struct VertexNode

{

  int data;//存儲頂點信息

  EdgeNode *firstedge;//指向第一個以該頂點為頂點的弧結點

}VertexNode[MAXVEX];

此為圖表

typedef struct

{

  VertexNode adjList;//頂點表節點

  int numVertex,numEdges;//頂點數和邊數

}GraphAdjList;

鄰接鏈表和逆鄰接鏈表可以分別解決出度和入度的問題,但是不能同時考慮,因此引入十字鏈表。

3、十字鏈表 (有向圖)

頂點表結構為: data firstin firstout

邊表結構為:tailvex headvex hlink tlink info

firstin,firstout:分別指向以該節點為弧頭和弧尾的弧結點

tailvex:弧尾 headvex:弧頭 hlink:指向弧頭相同的下一條邊 tlink:指向弧尾相同的下一條邊

首先將頂點結點和所有的弧結點全部寫出,然后分別將指針指向相應的弧。

注意,此處所有的指針都是指向弧的,與之前的相同。

總結

以上是生活随笔為你收集整理的图Graph的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。