¿Hay alguna manera de manejar las listas en Java como bidimensionales?Lista bidimensional en Java
La situación: Tengo un gráfico con nodos, bordes y peso por borde. Ahora necesito una estructura de datos para almacenar para cada nodo: a) sus vecinos b) el peso del borde para cada neigbour
Primero pensé en la creación de un "nodo" nueva clase con un identifyer y algo así como un período de dos matriz dimensional para almacenar identificadores de vecinos y pesas de borde. Pero el número de vecinos para cada nodo no se proporciona y puede aumentar dinámicamente durante el tiempo de ejecución. Por lo tanto, creo que las matrices bidimensionales no son el camino a seguir aquí.
pensé que sería posible tener en el "nodo" clase una lista como:
List<node> neighbours = new ArrayList<node>();
Pero, obviamente, esto sólo se encarga de los nodos vecinos - no los pesos de sus bordes.
¿Alguien tiene una pista sobre cómo construir un "gráfico" donde para cada nodo se almacenan los identificadores del vecino y el peso del borde correspondiente?
Gracias por leer :-)
Una matriz bidimensional haría, pero si implementarlo en modo de matriz 2D no es necesario y usted es flexible. ¿Puedo sugerir el uso de MAPS en Java? http://docs.oracle.com/javase/6/docs/api/java/util/Map.html –
Similares: http://stackoverflow.com/questions/745048/looking-for-a-simple- java-api-for-creating-graphs-edges-nodes – yiannis
[JGraphT] (http://jgrapht.sourceforge.net/) es increíble y una gran alternativa a los mapas de Java. – coroner