邻接矩阵表示法
矩阵的大小是 VxV,其中 V 是图的顶点数,根据顶点 i 到顶点 j 是否有边,条目 Aij 的值为1或0。
邻接矩阵示例
邻接矩阵的优点
邻接矩阵的缺点
C示例
如果您知道如何创建二维数组,那么您也知道如何创建邻接矩阵。
// Adjacency Matrix representation in C #include
#define V 4 // Initialize the matrix to zero void init(int arr[][V]) {
int i, j; for (i = 0; i < V; i++) for (j = 0; j < V; j++) arr[i][j] = 0; } // Add edges void addEdge(int arr[][V], int i, int j) {
arr[i][j] = 1; arr[j][i] = 1; } // Print the matrix void printAdjMatrix(int arr[][V]) {
int i, j; for (i = 0; i < V; i++) {
printf("%d: ", i); for (j = 0; j < V; j++) {
printf("%d ", arr[i][j]); } printf("\n"); } } int main() {
int adjMatrix[V][V]; init(adjMatrix); addEdge(adjMatrix, 0, 1); addEdge(adjMatrix, 0, 2); addEdge(adjMatrix, 1, 2); addEdge(adjMatrix, 2, 0); addEdge(adjMatrix, 2, 3); printAdjMatrix(adjMatrix); return 0; }
邻接矩阵应用
- 在网络中创建路由表
- 导航任务
参考文档
[1]Parewa Labs Pvt. Ltd.Adjacency Matrix[EB/OL].https://www.programiz.com/dsa/graph-adjacency-matrix,2020-01-01.
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/227562.html原文链接:https://javaforall.net
