Java程序实现图数据结构
要理解这个例子,你需要了解以下 Java 编程 主题:
示例:实现图数据结构
class Graph {
// 内部类
// 用于跟踪边
class Edge {
int src, dest;
}
// 顶点和边的数量
int vertices, edges;
// 用于存储所有边的数组
Edge[] edge;
Graph(int vertices, int edges) {
this.vertices = vertices;
this.edges = edges;
// 初始化边数组
edge = new Edge[edges];
for(int i = 0; i < edges; i++) {
// 边数组的每个元素
// 都是 Edge 类型的对象
edge[i] = new Edge();
}
}
public static void main(String[] args) {
// 创建 Graph 类的对象
int noVertices = 5;
int noEdges = 8;
Graph g = new Graph(noVertices, noEdges);
// 创建图
g.edge[0].src = 1; // 边 1---2
g.edge[0].dest = 2;
g.edge[1].src = 1; // 边 1---3
g.edge[1].dest = 3;
g.edge[2].src = 1; // 边 1---4
g.edge[2].dest = 4;
g.edge[3].src = 2; // 边 2---4
g.edge[3].dest = 4;
g.edge[4].src = 2; // 边 2---5
g.edge[4].dest = 5;
g.edge[5].src = 3; // 边 3---4
g.edge[5].dest = 4;
g.edge[6].src = 3; // 边 3---5
g.edge[6].dest = 5;
g.edge[7].src = 4; // 边 4---5
g.edge[7].dest = 5;
// 打印图
for(int i = 0; i < noEdges; i++) {
System.out.println(g.edge[i].src + " - " + g.edge[i].dest);
}
}
}
输出
1 - 2
1 - 3
1 - 4
2 - 4
2 - 5
3 - 4
3 - 5
4 - 5
在上面的示例中,我们在 Java 中实现了图数据结构。要了解更多关于图的信息,请访问 图数据结构。