Estoy tratando de encontrar la mejor estructura de datos para visualizar esta interfaz de usuario:
Estoy usando javascript/mecanografiado con Angular y debería poder agregar/eliminar/actualizar elementos. Considere también que tendré muchas filas y columnas y hasta 100 elementos no repetidos en cada celda. Hasta ahora estoy considerando esta estructura de datos:
var data = new Map<string, Map<string, Set<Item>>>();
donde las cadenas son rowKeyN y columnKeyN y Set contiene los elementos de cada celda.
Este tipo de estructura de datos parece un poco complicado de usar, pero es lo mejor que encontré en términos de rendimiento. ¿Qué piensas? Gracias de antemano.
Me topé con esta pregunta: debe mirar la representación de la tabla de Guava (para Java), donde el último caso obtendría una Lista
ver más detalles aquí para la mesa de guayaba
pero en resumen: tomado de los documentos:
Table<Vertex, Vertex, Double> weightedGraph = HashBasedTable.create(); weightedGraph.put(v1, v2, 4); weightedGraph.put(v1, v3, 20); weightedGraph.put(v2, v3, 5); weightedGraph.row(v1); // returns a Map mapping v2 to 4, v3 to 20 weightedGraph.column(v3); // returns a Map mapping v1 to 20, v2 to 5
En tu caso sería Table<Vertex,Vertex,Array>
Vine aquí mientras intentaba buscar algo como lo anterior para Typescript, no lo he encontrado, todavía, si alguien sabe de tal implementación, hágamelo saber