我最近开始处理一般的数据结构。我已经有一个适用于adjacency list
的C代码,我想将其更改为adjacency matrix
。
我的问题是:
将adjacency list
更改为adjacency matrix
的最简单,最好的方法是什么?
我知道我需要一个二维数组,例如a[i][j].
,在哪里以及如何在现有代码中最好地实现它?
在这里,我的c代码具有实际的数据结构:
#include <stdio.h>
#include <stdlib.h>
// Define maximum number of vertices in the graph
#define N 6
// graph data structure
struct Graph {
struct Node* head[N];
};
// structure to store adjacency lists
struct Node {
int dest;
struct Node* next;
};
// data structure to store graph edges
struct Edge {
int src, dest;
};
我针对这种现有数据结构的算法运行良好。
我只想知道如何更改数据结构才能使结构良好的adjacency matrix
正常工作。
我不需要一个完整的例子,一个线索就是我所需要的...
感谢您的帮助。