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

教程基础Java

Controllo del flusso Java

Array Java

Orientamento ad oggetti Java (I)

Orientamento ad oggetti Java (II)

Orientamento ad oggetti Java (III)

Gestione delle eccezioni Java

Elenco Java

Queue (coda) Java

Map di Java

Set di Java

Input/Output (I/O) Java

Reader/Writer Java

Altri argomenti Java

Implementazione della struttura dati del grafico in Java

Esempi di esempio Java

In questo esempio, implementeremo la struttura dati del grafico in Java.

Esempio: Implementazione della struttura dati del grafico

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;
    //Stampa grafico
    for(int i = 0; i < noEdges; i++) {
      System.out.println(g.edge[i].src + " - " + g.edge[i].dest);
    }
  }
}

Risultato di output

1 - 2
1 - 3
1 - 4
2 - 4
2 - 5
3 - 4
3 - 5
4 - 5
Output grafico

Negli esempi sopra, abbiamo implementato la struttura dati grafica in Java.

Esempi di esempio Java