Java教程

Java 实现图数据结构的程序

实现图数据结构的Java程序

在本例中,我们将使用 Java 实现图数据结构。
要理解此示例,您应该了解以下Java 编程主题:
Java 类和对象 Java 方法

示例: 实现图数据结构

class Graph {
  // inner class
  // to keep track of edges
  class Edge {
    int src, dest;
  }
  // number of vertices and edges
  int vertices, edges;
  // array to store all edges
  Edge[] edge;
  Graph(int vertices, int edges) {
    this.vertices = vertices;
    this.edges = edges;
    // initialize the edge array
    edge = new Edge[edges];
    for(int i = 0; i < edges; i++) {
      // each element of the edge array
      // is an object of Edge type
      edge[i] = new Edge();
    }
  }
  public static void main(String[] args) {
    // create an object of Graph class
    int noVertices = 5;
    int noEdges = 8;
    Graph g = new Graph(noVertices, noEdges);
    // create graph
    g.edge[0].src = 1;   // edge 1---2
    g.edge[0].dest = 2;
    g.edge[1].src = 1;   // edge 1---3
    g.edge[1].dest = 3;
    g.edge[2].src = 1;   // edge 1---4
    g.edge[2].dest = 4;
    g.edge[3].src = 2;   // edge 2---4
    g.edge[3].dest = 4;
    g.edge[4].src = 2;   // edge 2---5
    g.edge[4].dest = 5;
    g.edge[5].src = 3;   // edge 3---4
    g.edge[5].dest = 4;
    g.edge[6].src = 3;   // edge 3---5
    g.edge[6].dest = 5;
    g.edge[7].src = 4;   // edge 4---5
    g.edge[7].dest = 5;
    // print graph
    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 实现了图数据结构。要了解有关图表的更多信息,请访问Graph Data Structure。
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4