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

Um Pouco Sobre árvore

Trabalho Universitário: Um Pouco Sobre árvore. Pesquise 862.000+ trabalhos acadêmicos

Por:   •  2/12/2013  •  407 Palavras (2 Páginas)  •  801 Visualizações

Página 1 de 2

1) Implemente uma função recursiva que, dada uma árvore, retorne a quantidade de nós que guardam os números pares. Essa função deve obedecer o protóripo: int pares(Arv* a);

#include<stdio.h>

#include<stdlib.h>

Struct Arv{

Int info;

arv* e;

arv* d;

};

Arv* cria(){

Return NULL;

}

Arv* cria2(int k, arv* dir, arv* esq){

Arv* a = (Arv*)malloc(sizeof(Arv));

a->info=k;

a->e=esq;

a->d=dir;

return a;

}

Int pares(Arv* a){

int o;

if(p->info%2==0){

o = o +1;

return o + pares(arv* e) + pares(arv* d);

}

if(p->info%2!=0){

return o + pares(arv* e) + pares(arv* d);

}

}

int main(){

Arv* a;

int n;

n = pares(a);

system(“pause>NULL”);

}

2) Implemente uma função recursiva que, dada uma árvore, retorne a quantidade de nós que guardam valores maiores que um determinado valor x (também passado como parâmetro). Essa função deve obedecer o protótipo: int maiores (Arv* a, int x);

#include<stdio.h>

#include<stdlib.h>

Struct Arv{

Int info;

arv* e;

arv* d;

};

Arv* cria(){

return NULL;

}

Arv* cria2(int k, arv* dir, arv* esq){

Arv* a = (Arv*)malloc(sizeof(Arv));

a->info=k;

a->e=esq;

a->d=dir;

return a;

}

Int maior(Arv* a, int x){

x = -500;

if(a->info>x){

x=a->info;

{

}

if(a->e==NULL & a->d==NULL){

return maior(Arv* a,x );

}

if(a->e==NULL & a->d!=NULL){

return maior(arv* d,x );

}

if(a->e!=NULL & a->d==NULL){

return maior(arv* e,x );

}

If(a->d!=NULL & a->e!=NULL ){

return maior(arv* d, x) + maior(arv* e,x);

}

}

}

int main(){

Arv* a;

int k, l;

l = maior(k);

system(“pause>NULL”);

}

3) Escreva uma função recursiva que calcule o comprimento do caminho interno de uma árvore. Essa função deve obedecer o protótipo: int comprimento (Arv* a);

4) Implemente uma função que, dada uma árvore, retorne a quantidade de folhas dessa árvore. Essa função deve obedecer o protóipo: int folhas (Arv* a);

#include<stdio.h>

#include<stdlib.h>

Struct Arv{

Int info;

arv* e;

arv* d;

};

Arv* cria(){

Return NULL;

}

Arv* cria2(int k, arv* dir, arv* esq){

Arv* a = (Arv*)malloc(sizeof(Arv));

a->info=k;

a->e=esq;

a->d=dir;

return a;

}

int folha(Arv* a){

int b=0;

if(a->e==NULL & a->d==NULL){

b++;

return b + folha(Arv* a);

}

If(a->e==NULL & a->d!=NULL){

b++;

return b + folha(arv* d);

}

If(a->e!=NULL & a->d==NULL){

b++;

return b + folha(arv* e);

}

If(a->e!=NULL & a->d!=NULL){

return folha(arv* e) + folha(arv* d);

}

}

int main(){

Arv* a;

int n;

n = folhas(a);

system(“pause>NULL”);

...

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