Class Graph
java.lang.Object
|
+--Graph
- Direct Known Subclasses:
- UnorderedGraph
- public class Graph
- extends java.lang.Object
Classe di implementazione di grafi orientati,
con archi pesati.
Le etichette dei veritci sono caratteri.
Il grafo è rappresentato con liste di adiacenza.
Inner Class Summary |
protected class |
Graph.AdjList
Classe degli elementi delle liste di adiacenza |
protected class |
Graph.Edge
Classe degli archi |
protected class |
Graph.ListIterator
Classe degli iteratori sulle liste di adiacenza |
protected class |
Graph.Vertex
Classe che rappresenta i vertici del grafo |
Field Summary |
protected java.util.Vector |
vertices
|
Constructor Summary |
Graph()
|
Method Summary |
void |
addArc(char labelsource,
char labeldes)
aggiunge l'arco di (labelsource,labeldes) di peso 1 |
void |
addArc(char labelsource,
char labeldes,
int weight)
aggiunge l'arco (labelsource, labeldes) di peso weight;
se l'arco (labelsource, labeldes) già esiste, ne aggiorna il peso |
int |
addVertex(char label_of_vertex)
aggiunge un vertice di etichetta label_of_vertex
se il grafo non ha vertici con questa etichetta |
int |
cardVertexes()
|
protected Graph.AdjList |
ordInsert(int i,
int w,
Graph.AdjList l)
inserimento ordinato per indice sulla lista degli adiacenti
con sovrascrittura del peso in caso di elemento già esistente |
java.lang.String |
toString()
Stampa il grafo sotto forma di liste di adiacenza;
ogni riga inizia col nome di un vertice, seguito dall'elenco
delle coppie (vertice adiacente, peso dell'arco) |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
vertices
protected java.util.Vector vertices
Graph
public Graph()
addVertex
public int addVertex(char label_of_vertex)
- aggiunge un vertice di etichetta label_of_vertex
se il grafo non ha vertici con questa etichetta
- Returns:
- l'indice del vertice
ordInsert
protected Graph.AdjList ordInsert(int i,
int w,
Graph.AdjList l)
- inserimento ordinato per indice sulla lista degli adiacenti
con sovrascrittura del peso in caso di elemento già esistente
addArc
public void addArc(char labelsource,
char labeldes)
- aggiunge l'arco di (labelsource,labeldes) di peso 1
addArc
public void addArc(char labelsource,
char labeldes,
int weight)
- aggiunge l'arco (labelsource, labeldes) di peso weight;
se l'arco (labelsource, labeldes) già esiste, ne aggiorna il peso
cardVertexes
public int cardVertexes()
- Returns:
- la cardinalità del grafo, ossia dell'insieme dei vertici
toString
public java.lang.String toString()
- Stampa il grafo sotto forma di liste di adiacenza;
ogni riga inizia col nome di un vertice, seguito dall'elenco
delle coppie (vertice adiacente, peso dell'arco)
- Overrides:
toString
in class java.lang.Object