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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

用邻接矩阵存储图

發(fā)布時(shí)間:2023/12/20 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用邻接矩阵存储图 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一?點(diǎn)睛

鄰接矩陣通常采用一個(gè)一維數(shù)組存儲(chǔ)圖中節(jié)點(diǎn)的信息,采用一個(gè)二維數(shù)組存儲(chǔ)圖中節(jié)點(diǎn)之間的鄰接關(guān)系。

鄰接矩陣可以用來(lái)表示無(wú)向圖、有向圖和網(wǎng)。

1?無(wú)向圖的鄰接矩陣

在無(wú)向圖中,若從節(jié)點(diǎn) Vi 到節(jié)點(diǎn) Vj 有邊,則鄰接矩陣 M[i][j] = M[j][i ]= 1,否則 M[i][j] = 0。

無(wú)向圖的鄰接矩陣的特定如下。

a?無(wú)向圖的鄰接矩陣是對(duì)稱矩陣,并且是唯一的。

b?第 I 行或第 i 列非零的個(gè)數(shù)正好是第 i 個(gè)節(jié)點(diǎn)的度。

2?有向圖的鄰接矩陣

在有向圖中,若從節(jié)點(diǎn) Vi 到節(jié)點(diǎn) Vj 有邊,則鄰接矩陣 M[i][j]=1,否則 M[i][j]=0 。

有向圖的鄰接矩陣的特定如下。

a?有向圖的鄰接矩陣不一定是對(duì)稱的。

b?第 i 行非零元素的個(gè)數(shù)正好是第 i 個(gè)節(jié)點(diǎn)的出度,第 i 列非零元素的個(gè)數(shù)正好是第 i 個(gè)節(jié)點(diǎn)的入度。

3?網(wǎng)的鄰接矩陣

網(wǎng)是帶權(quán)圖,需要存儲(chǔ)邊的權(quán)值,則鄰接矩陣表示為:M[i][j] = Wij,其他情況為無(wú)窮大。

二?算法步驟

1?輸入節(jié)點(diǎn)數(shù)和邊數(shù)。

2?依次輸入節(jié)點(diǎn)信息,將其存儲(chǔ)到節(jié)點(diǎn)數(shù)組?Vex[]?中。

3?初始化鄰接矩陣,如果是圖,則將其初始化為0,如果是網(wǎng),則將其初始化為無(wú)窮大。

4?依次輸入每條邊依附的兩個(gè)節(jié)點(diǎn),如果是網(wǎng),則還需要輸入該邊的權(quán)值。

  • 如果是無(wú)向圖,則輸入a,b,查詢節(jié)點(diǎn)a、b在節(jié)點(diǎn)數(shù)組?Vex[]?中的存儲(chǔ)下標(biāo) i、j,讓?Edge[i][j]=Edge[j][i]=1。
  • 如果是有向圖,則輸入a,b,查詢節(jié)點(diǎn)a、b在節(jié)點(diǎn)數(shù)組?Vex[]?中的存儲(chǔ)下標(biāo) i、j,讓?Edge[i][j]=1。
  • 如果是無(wú)向網(wǎng),則輸入a,b,w,查詢節(jié)點(diǎn)a、b在節(jié)點(diǎn)數(shù)組?Vex[]?中的存儲(chǔ)下標(biāo) i、j,讓?Edge[i][j]=Edge[j][i]=w。
  • 如果是有向網(wǎng),則輸入a,b,w,查詢節(jié)點(diǎn)a、b在節(jié)點(diǎn)數(shù)組?Vex[]?中的存儲(chǔ)下標(biāo) i、j,讓?Edge[i][j]=w。

三?實(shí)現(xiàn)

package graph;import java.util.Scanner;public class CreateAMGraph {static final int MaxVnum = 100; // 頂點(diǎn)數(shù)最大值static int locatevex(AMGraph G, char x) {for (int i = 0; i < G.vexnum; i++) // 查找頂點(diǎn)信息的下標(biāo)if (x == G.Vex[i])return i;return -1; // 沒找到}static void CreateAMGraph(AMGraph G) {Scanner scanner = new Scanner(System.in);int i, j;char u, v;System.out.println("請(qǐng)輸入頂點(diǎn)數(shù):");G.vexnum = scanner.nextInt();System.out.println("請(qǐng)輸入邊數(shù):");G.edgenum = scanner.nextInt();System.out.println("請(qǐng)輸入頂點(diǎn)信息:");// 輸入頂點(diǎn)信息,存入頂點(diǎn)信息數(shù)組for (int k = 0; k < G.vexnum; k++) {G.Vex[k] = scanner.next().charAt(0);}//初始化鄰接矩陣所有值為0,如果是網(wǎng),則初始化鄰接矩陣為無(wú)窮大for (int m = 0; m < G.vexnum; m++)for (int n = 0; n < G.vexnum; n++)G.Edge[m][n] = 0;System.out.println("請(qǐng)輸入每條邊依附的兩個(gè)頂點(diǎn):");while (G.edgenum-- > 0) {u = scanner.next().charAt(0);v = scanner.next().charAt(0);i = locatevex(G, u);// 查找頂點(diǎn) u 的存儲(chǔ)下標(biāo)j = locatevex(G, v);// 查找頂點(diǎn) v 的存儲(chǔ)下標(biāo)if (i != -1 && j != -1)G.Edge[i][j] = G.Edge[j][i] = 1; //鄰接矩陣儲(chǔ)置1else {System.out.println("輸入頂點(diǎn)信息錯(cuò)!請(qǐng)重新輸入!");G.edgenum++; // 本次輸入不算}}}static void print(AMGraph G) { // 輸出鄰接矩陣System.out.println("圖的鄰接矩陣為:");for (int i = 0; i < G.vexnum; i++) {for (int j = 0; j < G.vexnum; j++)System.out.print(G.Edge[i][j] + "\t");System.out.println();}}public static void main(String[] args) {AMGraph G = new AMGraph();CreateAMGraph(G);print(G);} }class AMGraph {char Vex[] = new char[CreateAMGraph.MaxVnum];int Edge[][] = new int[CreateAMGraph.MaxVnum][CreateAMGraph.MaxVnum];int vexnum; // 頂點(diǎn)數(shù)int edgenum; // 邊數(shù) }

四?測(cè)試

綠色為輸入,白色為輸出。

?

總結(jié)

以上是生活随笔為你收集整理的用邻接矩阵存储图的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文字幕精品三级久久久 | 欧洲一区二区三区 | 女futa攻玩遍整个后宫 | 成人永久免费视频 | 天天干天天色天天 | 精品久久久久久 | 蜜桃中文字幕 | 欧美猛操 | 国产激情网址 | 三级网站在线播放 | 黄色片网站在线免费观看 | 天堂中文资源在线 | 国产微拍精品一区 | 99re国产| 能在线看的av | 中文字幕一区二区人妻电影 | 亚洲国产aⅴ精品一区二区的游戏 | 日韩黄色免费看 | 91美女片黄在线观看游戏 | 久久久久久久伊人 | 奇米影视av | 老司机深夜福利影院 | 在线a视频 | 国产丝袜高跟 | 91超碰免费| 免费亚洲精品 | 亚洲免费激情视频 | 精品少妇一区二区三区 | 欧美日韩高清 | 九九热精品在线 | 韩国午夜av| 青青草视频网站 | 美女张开腿让人桶 | 性做久久久久久久 | 国产精品一区二区免费看 | 久久久久国产一区二区三区潘金莲 | 亚洲成人精品一区二区三区 | 国产偷拍一区二区三区 | 哺乳援交吃奶在线播放 | 国产内射老熟女aaaa∵ | 国产日韩精品中文字无码 | 影音先锋在线播放 | 精品国产乱 | 精品香蕉99久久久久网站 | 久久视奸 | 欧洲中文字幕日韩精品成人 | 国产精品久久999 | 总裁边开会边做小娇妻h | 国产精品久久久久久一区二区三区 | 国产亚洲色婷婷久久99精品 | 一级片中文| 精品视频大全 | 欧美精品久久久久久久久 | 污污视频网站免费观看 | 欧美第七页 | 污视频在线观看网址 | 亚洲视频欧洲视频 | www.国产区| 国产xxxxxxxxx| 精品无码国产一区二区三区51安 | 制服.丝袜.亚洲.中文.综合懂 | 91精品久久久久久粉嫩 | 一级黄色片毛片 | 91中文字幕视频 | 国产超碰人人爽人人做人人爱 | av网站免费看 | 色婷婷国产 | 好吊妞一区二区三区 | 污视频91 | 91精品国产欧美一区二区 | 国产乱妇4p交换乱免费视频 | 一二三区在线视频 | 久久疯狂做爰流白浆xx | 少妇三级 | 伊人狠狠干 | 九九色视频| 国产精品中文无码 | 日韩电影一二三区 | 超碰蜜桃 | 国产高清一区二区三区四区 | 亚洲精品乱码久久久久久日本蜜臀 | 狼人伊人久久 | 亚洲免费观看在线 | 欧美一区二区三区免费在线观看 | 免费av一级 | a人片| 精品久久香蕉国产线看观看亚洲 | 国产精品自慰网站 | 老妇女性较大毛片 | 麻豆一区二区三区四区 | 在线观看无码精品 | 亚洲男人天堂2017 | 中文字幕丝袜诱惑 | 国产97色| 日韩视频在线观看一区 | 波波野结衣 | 女人扒开双腿让男人捅 | 亚洲50p| 国产小视频网址 |