Arvore Linguagem c

392 palavras 2 páginas
INSTITUTO ENSINAR BRASIL
FACULDADES UNIFICADAS TEÓFILO OTONI
SISTEMAS DE INFORMAÇÃO – 3º PERÍODO

CLEITON HIRLE QUINTAL

TRABALHO DE PP3

Teófilo Otoni
2014

CLEITON HIRLE QUINTAL

IMPLEMENTAÇÃO CODIGO DE ABP

Trabalho apresentado à FUTO - Faculdades Unificadas de TO, como requisito parcial para obtenção de pontos na disciplina PP3 do curso de Sistemas de Informação, 3º período.

Teófilo Otoni
2014

#include
#include
typedef struct folha // crio um no com um ponteiro para esqyerda e direita
{
int info; struct folha *esq; struct folha *dir;
} arvore;

arvore* criararvore()
{
return NULL;
}

int arvorevazia(arvore *a)
{
return a == NULL;
}

void inserirfolha(arvore **a, int f)
{
if(*a == NULL) // se o apontado por a for null... { *a = (arvore*)malloc(sizeof(arvore)); //Aloco um espaço na memoria ( folha ) (*a)->esq = NULL;// esq aponta null (*a)->dir = NULL;// dir aponta null (*a)->info = f; //recebo a informação } else // enquanto esq ou dir for diferente de null faz... { if(f < (*a)->info) // se o elemento informado pelo usuario for menor faz q a raiz anterior { inserirfolha(&(*a)->esq, f); //chamo a função novamento passando como referencia o apontado por esq contendo a informação F } if(f >= (*a)->info) // se elemento informado pelo usuario for maior ou igual a raiz adiciono um novo elemento a direita { inserirfolha(&(*a)->dir, f); } }
}

void mostrarERD(arvore *a)
{
if(!arvorevazia(a)) { mostrarERD(a-> esq); // pecorro a esquerda dos elementos a esquerda da raiz para encontra o menor numero exibo e pecorro a direita do numero q foi exibido printf("%d\t", a->info); mostrarERD(a->dir); }
}

void mostrarRED(arvore *a) // exibo o elemento raiz vou para o proximo no a esquerda exibo se esq estiver apontando para null vou para a direita.......
{
if(!arvorevazia(a)) {

Relacionados

  • Sr Rafael
    1642 palavras | 7 páginas
  • Linguagens livres de contextos
    2186 palavras | 9 páginas
  • Tcc Ae21fea51e107fc82f21b467aa1365fe
    3190 palavras | 13 páginas
  • çlskjdflkç
    2443 palavras | 10 páginas
  • Arvore Binaria
    337 palavras | 2 páginas
  • Compiladores
    3384 palavras | 14 páginas
  • R graficos
    2365 palavras | 10 páginas
  • LLC
    7626 palavras | 31 páginas
  • Atps programação estruturada ii
    2602 palavras | 11 páginas
  • Teoria da computação
    2295 palavras | 10 páginas