English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمات Java الأساسية

تحكم Java في العملية

مجموعات Java Array

Java موجه الأحداث (I)

Java موجه الأحداث (II)

Java موجه الأحداث (III)

معالجة الاستثناءات في Java

قوائم Java List

Java Queue (الطابور)

مجموعات Java Map

مجموعات Java Set

مدخلات/مخرجات Java (I/O)

قراءات/كتابة Java

مواضيع أخرى في Java

تنفيذ بنية البيانات للرسومات باستخدام Java

Java Examples Comprehensive

في هذا المثال، سنقوم بتنفيذ بنية البيانات للرسومات باستخدام 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; // 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 the graph
    for(int i = 0; i < noEdges; i++) {
      System.out.println(g.edge[i].src + " - " + g.edge[i].dest);
    }
  }
}

Output Results

1 - 2
1 - 3
1 - 4
2 - 4
2 - 5
3 - 4
3 - 5
4 - 5
Graph Output

In the above example, we have implemented graph data structures using Java.

Java Examples Comprehensive