TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Linguagem C - Árvore de Busca Binária

Por:   •  6/6/2015  •  Trabalho acadêmico  •  549 Palavras (3 Páginas)  •  275 Visualizações

Página 1 de 3

#include

#include

struct no_arvore{

       int info;

       struct no_arvore *esq, *dir;

       };

     struct no_arvore *CAPB (int N)

{

        struct no_arvore *r;

        if (N==0)

    r=NULL;

        else

        {

    r = (struct no_arvore*) calloc (1, sizeof(struct no_arvore));

           printf("\nDigite um valor => ");

           scanf("%i",&r->info);

           r->esq = CAPB(N/2);

           r->dir = CAPB(N - N/2 - 1);

        }

        return r;

}      

void Pre_Ordem(struct no_arvore *R)

{

        if (R != NULL)

        {

                printf ("%i ",R->info);

                Pre_Ordem(R->esq);

                Pre_Ordem(R->dir);

        }

}

void In_Ordem(struct no_arvore *R)

{

        if (R != NULL)

        {

                In_Ordem(R->esq);

                printf ("%i ",R->info);

                In_Ordem(R->dir);

        }

}

void Pos_Ordem(struct no_arvore *R)

{

        if (R != NULL)

        {

                Pos_Ordem(R->esq);

                Pos_Ordem(R->dir);

                printf ("%i ",R->info);

        }
}

main()

{

        int qtd;

        struct no_arvore *Raiz;

        //clrscr();

        

        

        printf ("Digite o numero de nos para a arvore: ");

        scanf("%i",&qtd);

        printf("\n");

    Raiz = CAPB(qtd);

     

    printf ("\nPercurso PRE-ORDER \n");

    Pre_Ordem (Raiz);

    printf ("\nPercurso IN-ORDER \n");

     

    In_Ordem (Raiz);

    printf ("\nPercurso POS-ORDER \n");

    Pos_Ordem (Raiz);

       printf("\n\n");

      system("PAUSE");

}

...

Baixar como (para membros premium)  txt (1.6 Kb)   pdf (29.3 Kb)   docx (10.3 Kb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com