public NodoMed buscar(int chavePront)
        {
            Medico  dado  = new Medico(chavePront);
            NodoMed busca = new NodoMed(dado);

            return(buscaRec(busca, this.raiz));
        }
 private string preOrdem(NodoMed raiz)
 {
     if (raiz != null)
     {
         String aux = "";
         aux += raiz.ToString();
         aux += preOrdem(raiz.Esq);
         aux += preOrdem(raiz.Dir);
         return(aux);
     }
     else
     {
         return("");
     }
 }
        private NodoMed insRec(NodoMed novo, NodoMed raiz)
        {
            if (raiz == null)
            {
                return(novo);
            }
            if (novo.Medico.Crm.CompareTo(raiz.Medico.Crm) < 0)
            {
                raiz.Esq = insRec(novo, raiz.Esq);
            }
            else
            {
                raiz.Dir = insRec(novo, raiz.Dir);
            }

            return(raiz);
        }
 private NodoMed buscaRec(NodoMed busca, NodoMed raiz)
 {
     if (raiz == null)
     {
         return(null);
     }
     if (busca.Medico.Crm.CompareTo(raiz.Medico.Crm) == 0)
     {
         return(raiz);
     }
     else if (busca.Medico.Crm.CompareTo(raiz.Medico.Crm) < 0)
     {
         return(buscaRec(busca, raiz.Esq));
     }
     else
     {
         return(buscaRec(busca, raiz.Dir));
     }
 }
        public void Inserir(Medico med)
        {
            NodoMed novo = new NodoMed(med);

            this.raiz = insRec(novo, this.raiz);
        }
 public NodoMed(Medico medico, NodoMed dir, NodoMed esq)
 {
     this.medico = medico;
     this.dir    = dir;
     this.esq    = esq;
 }
 public ArvoreMedico()
 {
     this.raiz = null;// inicializa a arvore?
 }