Visualizador de árvores BST / AVL
Insira valores e observe a árvore crescer. Mude para o modo AVL para ver o rebalanceamento automático.
Logarithmic Efficiency in Tree Structures 🖖
Binary Search Trees mandate a strict hierarchical organization, ensuring left-child nodes hold lesser values. AVL trees enhance this by algorithmically enforcing a maximum height differential of one between subtrees. This mathematical self-balancing requires precise rotational transformations upon insertion or deletion. Such structural constraints guarantee search, insertion, and deletion operations remain bounded by O(log n) time complexity, optimizing rapid data retrieval.
Cada passo descarta a metade 🖖
Uma árvore binária de busca funciona como procurar uma palavra no dicionário: em cada nó você compara e descarta de imediato toda a metade que não pode conter o seu valor. Por isso uma árvore bem formada encontra qualquer valor entre um milhão de entradas em cerca de 20 comparações. Mas o formato depende inteiramente da ordem de inserção — digite os valores já ordenados (10, 20, 30, …) e veja a árvore desabar em uma única linha inclinada, tão lenta quanto percorrer uma lista um a um.
A razão áurea se esconde nas árvores AVL 🖖
Mude para o modo AVL e pergunte: qual a maior altura que uma árvore balanceada pode atingir para um dado número de nós? A resposta esconde a razão áurea. A árvore AVL válida mais esparsa de cada altura é uma árvore de Fibonacci, construída a partir de duas árvores de Fibonacci menores, de modo que suas quantidades de nós seguem a sequência de Fibonacci. É por isso que o limite de altura carrega a constante 1.44 — ela é exatamente 1 / log₂(φ), com φ ≈ 1.618, a razão áurea.
Problemas de exemplo
- Balanceado - BST balanceada com 7 nós
- Degenerado - BST degenerada (lista encadeada)
- Rebalanceamento AVL - A árvore AVL se rebalanceia automaticamente na inserção
- Antes da remoção - BST antes da remoção da raiz