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

Busca em profuncidade em c

Por:   •  7/6/2015  •  Trabalho acadêmico  •  262 Palavras (2 Páginas)  •  197 Visualizações

Página 1 de 2

#include <stdio.h>

#include <stdlib.h>

/* Aluno; RAPHAEL ABREU /*

typedef struct no {

int valor; // valor do mo

struct no *e; // prox a esquerda

struct no *d; // prox a direita

}arvore;

arvore *raiz;

arvore *nova;

arvore *novo_no();

/* cria novo no da arvore */

arvore * novo_no()

{

nova=(arvore *)malloc(sizeof(arvore));

nova->e = NULL;

nova->d = NULL;

}

/* Função de BUSCA EM PROFUNCIDADE RECURSIVA */

void busca(arvore* no)

{

if (no == NULL) return; // critério de parada

busca(no->e); // recursivamente até o ultimo da esquerda

printf("->%d", no->valor);

// após esgotar as possiblidades da esquerda

busca(no->d);// recursivamente até o ultimo da direita

}

void main()

{

/* Fazendo a árvore binária na gambiarra */

raiz = novo_no(); // inicia no

raiz->valor = 10; // atribui valor

raiz->e = novo_no();

raiz->e->valor = 20;

raiz->d = novo_no();

raiz->d->valor = 30;

raiz->e->e = novo_no();

raiz->e->e->valor = 70;

raiz->e->d = novo_no();

raiz->e->d->valor = 80;

raiz->e->d->d = novo_no();

raiz->e->d->d->valor = 60;

raiz->e->e->e = novo_no();

raiz->e->e->e->valor = 50;

raiz->e->e->d = novo_no();

raiz->e->e->d->valor = 40;

raiz->e->e->d->e = novo_no();

raiz->e->e->d->e-> valor = 25;

busca(raiz);

...

Baixar como (para membros premium)  txt (1.4 Kb)   pdf (42.8 Kb)   docx (11.2 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com