Ciao, mi potreste aiutare per piacere? Devo progettare una matrice di adiacenza. Il codice che ho scritto e il seguente:
dove i nodelist e linklist, sarebbero i nodi e i link di mio interesse, nel mio caso i nodi soltanto le classi, componenti e package all'interno di un diagramma UML e i link solo di un certo tipo.codice:public class AdjacencyMatrix: Graph { protected ArrayList matrix; private EA.Repository modelRepository; // progetto EA corrente public AdjacencyMatrix(EA.Repository repository) { for (int i = 0; i < nodeList.Count; i++) //inizializzare le righe della matrice { matrix.Add(new ArrayList()); for (int j=0; j< nodeList.Count; j++) { ((ArrayList)matrix[i]).Add(new ArrayList()); } } //inizializzazione dei nomi delle classi for (int i = 0; i < matrix.Count; i++) { if (i == 0) { ((ArrayList)this.matrix[i]).Add(""); foreach (Node node in nodeList) { ((ArrayList)matrix[i]).Add(node.className); } } //inizializzazione dei valori della matrice for (int j = 1; j < ((ArrayList)matrix[i]).Count; j++) { for (int k = 1; k < ((ArrayList)((ArrayList)matrix[i])[j]).Count; k++) ((ArrayList)((ArrayList)matrix[i])[j])[k] = 0; } } //definizione dell'esistenza del link foreach (Link link in linkList) { for (int i = 0; i < matrix.Count; i++) { if (link.startNodeId.Equals((String)matrix[0])) { for (int j = 1; j < ((ArrayList)matrix[i]).Count; j++) { if (link.endNodeId.Equals((String)((ArrayList)matrix[0])[j])) { ((ArrayList)matrix[0])[j] = 1; break; } } } } } } } }
Andrebbe bene il codice scritto cosi?
Grazie mille per l'aiuto.

Rispondi quotando