private int AlturaNo(No NoAltura) { if (NoAltura == null || (NoAltura.GetFilhoDir() == null && NoAltura.GetFilhoEsq() == null)) { return(0); } if (AlturaNo(NoAltura.GetFilhoEsq()) > AlturaNo(NoAltura.GetFilhoDir())) { return(1 + AlturaNo(NoAltura.GetFilhoEsq())); } else { return(1 + AlturaNo(NoAltura.GetFilhoDir())); } }
private void PrintArvorePercursoPosOrdem(No Inicio) { if (Inicio != null) { PrintArvorePercursoPosOrdem(Inicio.GetFilhoEsq()); PrintArvorePercursoPosOrdem(Inicio.GetFilhoDir()); Console.Write(Inicio.GetValor() + " "); } }
private int NumeroNos(No Inicio) { if (Inicio == null) { return(0); } return(1 + NumeroNos(Inicio.GetFilhoEsq()) + NumeroNos(Inicio.GetFilhoDir())); }
private void PosOrdem(No Inicio) { if (Inicio != null) { PosOrdem(Inicio.GetFilhoEsq()); PosOrdem(Inicio.GetFilhoDir()); Arvore_Percurso.Add(new No(Inicio.GetValor(), Inicio.GetPai(), Inicio.GetFilhoEsq(), Inicio.GetFilhoDir())); Console.Write(Inicio.GetValor() + " "); } }
private void MediaValores(No Inicio) { if (Inicio != null) { SomaValoresArvore += Inicio.GetValor(); MediaValores(Inicio.GetFilhoEsq()); MediaValores(Inicio.GetFilhoDir()); } MediaValoresArvore = SomaValoresArvore / NumeroNos(Raiz); }
private void Buscar(No Inicio, int NoProcurado) { if (Inicio != null) { if (NoProcurado.Equals(Inicio.GetValor())) { NoEncontrado = Inicio; } Buscar(Inicio.GetFilhoEsq(), NoProcurado); Buscar(Inicio.GetFilhoDir(), NoProcurado); } }
private void MenoresValores(No Inicio, int media) { if (Inicio != null) { if (Inicio.GetValor() < media) { Console.Write(Inicio.GetValor() + " "); } MenoresValores(Inicio.GetFilhoEsq(), media); MenoresValores(Inicio.GetFilhoDir(), media); } }
private void ArvoreEstritamenteBinaria(No Inicio) { if (Inicio != null) { if (Inicio.GetPai() != null) { if (Inicio.GetPai().GetFilhoEsq() == null || Inicio.GetPai().GetFilhoDir() == null) { EstritamenteBinaria = false; } } ArvoreEstritamenteBinaria(Inicio.GetFilhoEsq()); ArvoreEstritamenteBinaria(Inicio.GetFilhoDir()); } }
public void EncontrarRaiz(No Inicio) { if (Inicio != null) { if (Inicio.GetPai() == null) { RaizEncontrada = Inicio; } if (RaizEncontrada == null) { EncontrarRaiz(Inicio.GetPai()); } EncontrarRaiz(Inicio.GetFilhoEsq()); EncontrarRaiz(Inicio.GetFilhoDir()); } }
private void PaisMaioresFilhos(No Inicio, List <No> PaisTestados) { if (Inicio != null) { if (Inicio.GetPai() != null && !(PaisTestados.Contains(Inicio.GetPai()))) { PaisTestados.Add(Inicio.GetPai()); Console.Write("Pai: " + Inicio.GetPai().GetValor() + " - "); if (Inicio.GetPai().GetFilhoEsq() == null && Inicio.GetPai().GetFilhoDir() != null) { Console.Write("Maior Filho: " + Inicio.GetPai().GetFilhoDir().GetValor() + "\n"); } if (Inicio.GetPai().GetFilhoDir() == null && Inicio.GetPai().GetFilhoEsq() != null) { Console.Write("Maior Filho: " + Inicio.GetPai().GetFilhoEsq().GetValor() + "\n"); } if (Inicio.GetPai().GetFilhoEsq() != null && Inicio.GetPai().GetFilhoDir() != null) { if (Inicio.GetPai().GetFilhoEsq().GetValor() > Inicio.GetPai().GetFilhoDir().GetValor()) { Console.Write("Maior Filho: " + Inicio.GetPai().GetFilhoEsq().GetValor() + "\n"); } else { Console.Write("Maior Filho: " + Inicio.GetPai().GetFilhoDir().GetValor() + "\n"); } } } PaisMaioresFilhos(Inicio.GetFilhoEsq(), PaisTestados); PaisMaioresFilhos(Inicio.GetFilhoDir(), PaisTestados); } }