¿Hay buenas bibliotecas para manipular árboles en javascript? Para que quede claro, estoy buscando un árbol como en la estructura de datos y no en el modelo de visualización.¿Qué estructuras de datos de árbol Javascript están disponibles?
Respuesta
Estas son algunas bibliotecas que pueden serle útiles:
arboreal.js, un "micro-biblioteca para atravesar y manipular estructuras de datos en forma de árbol" en Node.js y el navegador.
buckets, una "biblioteca de estructura de datos completa, totalmente probada y documentada" que incluye BST, un montón y un montón de otras cosas.
¡Ojalá hubiera visto esa solución antes, porque esas bibliotecas parecen útiles!
Aquí hay una que preparo que es una alternativa. Significaba para el cruce, la manipulación y la carga de estructuras jerárquicas de árbol de auto referenciar tablas planas, no para árboles binarios equilibrados.
No estoy seguro de cuáles son sus necesidades por lo que este es un tiro en la oscuridad. suelo utilizar (para el peso ligero Javascript) una matriz de matrices, así:
node[i] = [parent, firstChild, secondChild, ... nthChild];
Prueba el DOM
var o = document.createElement('WHAT_YOU_WANT')
// o.appendChild(...)
Agregue algunas explicaciones de por qué este código ayuda al OP. Esto ayudará a proporcionar una buena respuesta. Ver [respuesta] para más información. –
No estoy en desacuerdo con esta respuesta. El DOM es una estructura de árbol, compatible con XML y JSON. Eliminar nodos, agregar hijos, niños que contienen hijos. Agregue un poco de CSS y puede fácilmente una buena estructura de vista de árbol. Además, la pregunta no especifica la apariencia del widget que desean. –
Esta es una buena respuesta, ¿por qué está esto downvoted? –
escribí un dato de simples orientadas biblioteca árbol llamado data-tree. Puede usar esto para crear, recorrer y buscar árbol en modo BFS/DFS. También puede importar/exportar datos desde el árbol. Pago y envío de la documentación detallada en: http://cchandurkar.github.io/Data-Tree/
utilizarlo en un nodo no parece npm install data-tree
Las solicitudes de recomendación de recursos o herramientas fuera del sitio están fuera de tema en Desbordamiento de pila. Si respondes, específicamente refuerzas la creencia de que Stack Overflow es un buen lugar para responder esas preguntas. No lo es. No responda estas preguntas, incluso si conoce una buena respuesta, ya que la mayoría de las respuestas serán muy dogmáticas ("Personalmente me gusta ..."). Puede abrir el diálogo del indicador sobre la pregunta y ver el motivo completo en su totalidad en la categoría ** fuera del tema **, o en [ayuda/tema]. Tampoco deberías responder en un comentario, ya que el efecto es similar a una respuesta real. –
@Kyll, gracias por llamar mi atención. No quiero reforzar ninguna de esas creencias. ¿Sería apropiado si borro mi respuesta? –
- 1. ¿Qué estructuras de ncurses están disponibles para BASH?
- 2. Desarrollo de iPhone: ¿Qué tipo de estructuras de datos están disponibles?
- 3. ¿Qué herramientas de registro de depuración están disponibles desde Javascript?
- 4. ¿Qué tipos de bases de datos están disponibles en Android?
- 5. qué bases de datos nosql están disponibles para azul
- 6. ¿Qué complementos de compilador scala están disponibles?
- 7. Estructuras de árbol e hilos
- 8. ¿Qué controladores MySQL están disponibles para node.js?
- 9. Principales estructuras de datos de JavaScript
- 10. biblioteca de estructuras de datos de JavaScript
- 11. Estructuras de árbol en una base de datos nosql
- 12. Estructuras de datos de árbol y gráfico en ruby
- 13. ¿Qué complementos/utilidades están disponibles para TFS?
- 14. ¿Qué informes están disponibles para svn?
- 15. ¿Qué fuentes están disponibles en Android?
- 16. C# estructuras de datos
- 17. SQL optimizado para estructuras de árbol
- 18. ¿Cómo almacenar estructuras de árbol en Java?
- 19. Qué herramientas de diseño de pantalla están disponibles
- 20. ¿Qué comandos de salida de consola están disponibles en Erlang?
- 21. ¿Qué hacks de CSS puros específicos de Safari están disponibles?
- 22. ¿Qué frameworks basados en actores están disponibles para Scala?
- 23. ¿cómo puedo convertir estructuras de datos ruby a estructuras de datos javascript con .js.erb?
- 24. Estructuras de datos pregunta
- 25. ¿Qué herramientas de análisis estático están disponibles para C#?
- 26. ¿Qué administradores de sesión alternativos están disponibles para Emacs?
- 27. ¿Qué registros de procesos distribuidos están disponibles para Erlang?
- 28. ¿Qué opciones de pruebas unitarias están disponibles para Silverlight?
- 29. ¿Qué plugins de vim están disponibles para Eclipse?
- 30. ¿Qué paquetes LaTeX están disponibles para los diagramas de circuitos?
Lástima arbórea que tendrá soporte, 3 solicitudes de extracción de espera desde hace 2 años. buckets se ve muy bien pero, aparte de bst, realmente no proporciona estructuras de datos de árbol – Overdrivr
TreeModel como lo indica @JNS parece ser la mejor opción. –
En un proyecto en el que trabajé para la ONG ruandesa Solid Africa, la estructura del árbol era una parte importante de llevar un registro de los gastos y las donaciones (su gasto o donación pertenecía a una categoría, alimentos, cuidados especiales, etc.). En base a esta experiencia desarrollé el [paquete de nodos tree-util] (https://www.npmjs.com/package/tree-util). Espero que pueda ser útil cuando quieras trabajar con estructuras de árboles. Especialmente si relacionas datos con las estructuras de tu árbol. –