static void PercorrerArvoreInFixado(NoBin nodo) { if (nodo != null) { PercorrerArvoreInFixado(nodo.Esquerda); Console.Write($"{nodo.Valor} "); PercorrerArvoreInFixado(nodo.Direita); } }
private NoBin Inserir(NoBin atual, NoBin novoNo) { if (atual == null) { return(novoNo); } else if (novoNo.Valor.CompareTo(atual.Valor) < 0) { atual.Esquerda = Inserir(atual.Esquerda, novoNo); } else { atual.Direita = Inserir(atual.Direita, novoNo); } return(atual); }
/* * Implementar um programa que efetue a montagem de uma árvore binária de busca com os * seguintes nomes de estados { Acre, Santa Catarina, Goiás, Tocantins, Ceará, Paraná, * Bahia, Sergipe e Roraima} e retorne a lista de nomes em ordem alfabética. */ static void Main(string[] args) { string[] nomesEstados = { "Santa Catarina", "Acre", "Goiás", "Tocantins", "Ceará", "Paraná", "Bahia", "Sergipe", "Roraima" }; ArvoreBinaria minhaArvore = new ArvoreBinaria(); foreach (var nomeEstado in nomesEstados) { NoBin nodeAInserir = new NoBin(nomeEstado); minhaArvore.InserirNoBin(nodeAInserir); } PercorrerArvoreInFixado(minhaArvore.Raiz); Console.ReadLine(); }
public void InserirNoBin(NoBin novoNo) { Raiz = Inserir(Raiz, novoNo); }