estrutura de dados

357 palavras 2 páginas
Declaração arvore

Type def struct tno
{
Float info;
Struct tno *esq, *dir;

Type def struct
{
Tno* raiz;
}tarvore

Void inicializar(tarvoe*A)
{(*A).raiz = NULL;
}

Void finalizar (tarvore *A)
{tconj c;
Tno *aux;
Inicializar (&c);
Inserir(&c,(*A).raiz);
While (!vazio(c))
{aux = obter(c);
Remover(&c,aux);
IF(aux!=NULL)
{
inserir(&c,(*Aux).esq);
Inserir(&c,(*aux).dir);
Free (aux);
}
}
Finalizar(&c);
}

Void finalizar_rec(tno **no)
{
IF(*no!=NULL)
{
Finalizar_rec(&(**no).esq);
Finalizar_rec(&(**no).dir);
Free(*no);
*no = NULL;
}
}

Finalizar(tarvore *A)
{
finalizar_rec(&(*A).raiz);
}

Vazia e cheia e buscar

Int vazia(tarvore A)
{return A.raiz==NULL;
}

Int cheia(tarvore A)
{ tno *Aux;
Aux= (tno*)malloc(sizeof(tno));
IF(aux==NULL)
Return 1;
Else
{
Free(aux);
Return 0;
}
}

Tno* Buscar(tarvore A, float info)
{
Tno No = A.raiz;
Int achou=0 ;
While (no!=NULL&&!achou)
IF(info(*no).dir;
Else
Achou =1;
IF (achou)
Return no;
Else
Return NULL;
}

Percorrer emordem, preordem e posordem

Void em ordemrec(tno*no)
{
IF(no!=NULL)
{
Emordemrec((*no).esq);
Printf(“%f”,(*no).info);
Emordemrec((*no).dir;
}
}
Void emordem(tarvore A)
{
Emordemrec(A.raiz);
}

Void preordemrec(tno *no)
{
IF(no!= NULL)
{
Printf(“%f”, (*no)
Preordemrec(*no).esq;
Preordemrec(*no).dir;
}
}
Void preordem(tarvore)
{
Preordemrec(a.raiz);
}

Void posordemrec(tno*no)
{
IF (no!=NULL)
{
Posordemrec(*no).esq;
Posordemrec(*no).dir;
Printf(“%f”,(*no).info;
}
}
Void posordem(tarvore A)
{
Posordemrec (A.raiz);
}

Largura e profundidade

Void largura(tarvore A)
{tno * no;
Tfila aux;
Inicializar (&aux);
Inserir(&aux,A.raiz);
While (!vazia(aux)
{
No=primeiro (aux);
Remover(&aux);
IF(no!=NULL)
{
Inserir(&aux,(*no).esq);
Inserir(&aux,(*no).dir);
Printf(“%f”,(*no).info);
}
}
Finalizar(&aux);
}

Void profundidade(tarvore A)
{ tno *no;
Tpilha aux;

Relacionados

  • Estrutura de Dados
    294 palavras | 2 páginas
  • Estrutura de dados
    1410 palavras | 6 páginas
  • estrutura de dados
    308 palavras | 2 páginas
  • Estrutura de dados
    1209 palavras | 5 páginas
  • Estrutura de dados
    365 palavras | 2 páginas
  • estrutura de dados
    940 palavras | 4 páginas
  • Estrutura de dados
    1051 palavras | 5 páginas
  • Estrutura de dados
    45366 palavras | 182 páginas
  • Estrutura de Dados
    16294 palavras | 66 páginas
  • Estrutura de Dados
    1559 palavras | 7 páginas