Disciplina: TI - Organização e Arquitetura dos Computadores
Banca: FUNDATEC
Orgão: IFC
Analise a seguinte implementação em linguagem C de uma árvore binária:
#include <stdio.h>
#include <stdlib.h>
typedef struct No{
int valor;
struct No *esq;
struct No *dir;
}No;
void func(No *raiz){
if(raiz != NULL){
func(raiz->esq);
printf("%d ",raiz->valor);
func(raiz->dir);
}
}
int main(){
No *n1 = malloc(sizeof(No));
No *n2 = malloc(sizeof(No));
No *n3 = malloc(sizeof(No));
No *n4 = malloc(sizeof(No));
No *n5 = malloc(sizeof(No));
n1->valor = 4;
n2->valor = 2;
n3->valor = 6;
n4->valor = 1;
n5->valor = 3;
n1->esq = n2;
n1->dir = n3;
n2->esq = n4;
n2->dir = n5;
n3->esq = NULL;
n3->dir = NULL;
n4->esq = NULL;
n4->dir = NULL;
n5->esq = NULL;
n5->dir = NULL;
func(n1);
return 0;
}
Assinale a alternativa que apresenta a saída produzida pelo programa.