2012-01-07 5 views
6

¿Hay un Árbol AVL incorporado en las bibliotecas .NET?.NET built-in AVL-Tree?

He buscado pero no he encontrado ninguno.

  • Si la hay, ¿dónde? ¿Qué espacio de nombres?
  • Si no, ¿hay alguna buena implementación para AVL Trees in C#?
  • ¡Si tampoco! entonces, ¿hay una forma fácil de hacerlo? Sé cómo funciona y ya construí uno en C++ nativo, pero ahora no tengo tiempo y temo un mal rendimiento si lo hago yo mismo.
+1

¿Qué estás tratando de lograr? Tal vez haya un tipo de colección integrado que se adapte a sus necesidades. – Oded

+0

Necesito una jerarquía equilibrada, un árbol binario normal no es apropiado porque no está equilibrado, cualquier sugerencia sería muy bienvenida :) –

+0

No está explicando qué va a hacer _do_ con su estructura de datos, simplemente dando los requisitos _para_ datos estructura. Dar más requisitos de nivel es más útil. – Oded

Respuesta

3

Una búsqueda rápida encontró una implementación here. El código parece limpio, pero no lo he intentado.

Si nada más, puede hacer una prueba de rendimiento rápido contra SortedSet<T> (como lo sugiere @Josef) para ver si hay alguna diferencia para su caso de uso.