2012-09-21 39 views
6

Estoy leyendo algoritmos de Robert Sedwick. Algunas definiciones del libro se muestran a continuación.Diferencia entre árboles ordenados y desordenados (rooteados)

Un árbol (también un árbol ordenado) es un nodo (llamado raíz) conectado a una secuencia de árboles disjuntos. Tal secuencia se llama bosque.

Un árbol enraizado (o árbol desordenado) es un nodo (llamado raíz) conectado a un conjunto múltiple de árboles enraizados. (Un conjunto múltiple de este tipo se llama un bosque desordenada .

Mis preguntas sobre el texto anterior están

  1. estoy teniendo difficutlty en la comprensión por encima de DEFINCIONES. ¿Puede alguien por favor explique con ejemplos.
  2. ¿Qué quiere decir el autor de árboles disjuntos?
  3. ¿Qué quiere decir el autor de árboles multiconjuntos arraigada?

Gracias por su tiempo y ayuda

+0

La diferencia entre los árboles ordenados y desordenados es que los subárboles tienen (o no tienen) una orden. Cada nodo tiene un primer, un segundo, un enésimo subárbol: T1, T2, ..., Tn en un caso (y solo n subárboles en el otro caso). –

Respuesta

2
  1. Un árbol con esta definición es más o menos lo que normalmente entendemos por árbol: un nodo conectado a una secuencia ordenada de (sub) árboles. Es una definición recursiva: si la secuencia está vacía, el nodo se llama hoja, y si no, cada uno de los árboles en la secuencia también es "un nodo conectado a una secuencia ordenada de (sub) árboles".
  2. Por disjuntos el autor significa que los subárboles no tienen nodos en común.
  3. La definición significa que los subárboles de un árbol enraizado no están en un orden particular y que pueden repetirse. Un multiset es como un conjunto que permite múltiples.

Un árbol ordenado (un "árbol" de la primera definición) tiene los subárboles en un orden particular, y la secuencia del subárbol no puede contener el mismo árbol dos veces, porque los subárboles deben estar disjuntos. Un árbol enraizado no tiene estas restricciones; según esta definición, una raíz puede tener un subárbol dos veces, en una estructura que se asemeja a un ciclo.

No tengo el libro de Sedwick para verificar si esta definición tiene sentido o por qué; una definición más común o árbol enraizado usaría un conjunto normal para subárboles, en lugar de un conjunto múltiple. Tal vez la intención es permitir enlaces múltiples entre un nodo y sus hijos, mientras se rechazan otros tipos de ciclos, como los enlaces entre hermanos y primos.

+0

Gracias por la explicación. Por cierto, una pregunta más ¿qué es árboles libres y árboles sin raíces? – venkysmarty

+0

Una vez que tenga un árbol, puede elegir cualquier nodo como raíz y seguirá siendo un árbol. Un árbol "libre" o "sin raíz" es un árbol donde no se ha seleccionado ningún nodo como raíz. http://en.wikipedia.org/wiki/Free_tree – Joni

+0

* "Un árbol ** normal ** tiene los subárboles en un orden particular" *. Supongo que te refieres a un ** árbol ordenado **, no es normal. Lo que es normal/predeterminado para uno (autor) no es para otro. –