Esempio n. 1
0
 void emOrdem(NoAVL<T>* nodo) {
   if (nodo != NULL) {
     emOrdem(nodo->getEsquerda());
     elementos.push_back(nodo);
     emOrdem(nodo->getDireita());
   }
 }
Esempio n. 2
0
void emOrdem(Node* no) {
    if (no != NULL) {
        emOrdem(no->sae);
        printf("%d ", no->valor);
        emOrdem(no->sad);
    }
}
 /**
  * @brief      Método para colocar os nodos da árvore
  *             na lista "elementos" em emOrdem
  *
  * @param      nodo      Árvore que será ordenada
  */
 void emOrdem(NoRB<T>* nodo) {
     if (nodo != nullptr) {
         emOrdem(nodo->getEsquerda());
         elementos.push_back(nodo);
         emOrdem(nodo->getDireita());
     }
 }
Esempio n. 4
0
	void emOrdem(NoAVL<T>* nodo) {
		if (nodo) {
			emOrdem(nodo->esquerda);
			elementos.push_back(nodo);
			emOrdem(nodo->direita);
		}
	}
Esempio n. 5
0
void emOrdem(node *n){
    if(n == NULL){
        return;
    }
    emOrdem(n->esq);
    printf("[%d]",n->info);
    emOrdem(n->dir);
}
Esempio n. 6
0
void emOrdem(struct arvore * no){
     if(no!=NULL)
     {
        emOrdem(no->esq); 
        printf("%d ", no->chave); 
        emOrdem(no->dir); 
     }
}
void emOrdem(no* T){

    if(T != NULL){
        emOrdem(T->esquerdo);
        printf("%d(Bf=%d) ", T->dado, difAlturaEsq_e_Dir(T));
        emOrdem(T->direito);
    }
}
Esempio n. 8
0
File: E.c Progetto: jpbat/aed2011
void emOrdem (nodePtr leaf)
{
	if (leaf != NULL)
	{
		emOrdem(leaf->left);
		visita (leaf);
		emOrdem(leaf->right);
	}
}
Esempio n. 9
0
void emOrdem(No *arvore) {
	if(arvore != NULL) {
		emOrdem(arvore->f0);
		if(arvore->aresta != 2) {
			printf("%d ", arvore->aresta);
		}
		emOrdem(arvore->f1);
	}
}
Esempio n. 10
0
void impressao(struct arvore * no){ // Opcao 4
    // Imprime os elementos de forma recursiva
    printf("Pre Ordem\n");
    preOrdem(no);
    printf("\nPos Ordem\n");
    posOrdem(no);
    printf("\nEm Ordem\n");
    emOrdem(no);
}  
Esempio n. 11
0
void exibeOrdem(Arvore* minhaArvore){
    printf("\n#----- Visualizando estrutura da árvore -----#\n");
    printf("Árvore pré-ordem: ");
    preOrdem(minhaArvore->raiz);
    printf("\nArvore pós-ordem: ");
    posOrdem(minhaArvore->raiz);
    printf("\nÁrvore em ordem: ");
    emOrdem(minhaArvore->raiz);
    printf("\n");
}
Esempio n. 12
0
File: E.c Progetto: jpbat/aed2011
int main()
{
	nodePtr tree=NULL;
	char word[256];
	
	while( (scanf("%s", word)) != EOF )
		tree = worker (word, tree);
	
	emOrdem(tree);
	
	eraseTree(tree);

	return 0;
}
int main(void){
    no *raiz = NULL;
    int dadosDosElementos, nElementos, i, opcao;

    do{
        printf("\nArvores AVL"
               "\n1.Criar:"
               "\n2.Inserir no:"
               "\n3.Excluir no:"
               "\n4.Mostrar encaminhamentos:"
               "\n5.Sair:"
               "\nInforme sua escolha: ");
        scanf("%d", &opcao);
        switch(opcao){
            case 1:
                printf("\nInforme a qtd de elementos que deseja inserir: ");
                scanf("%d",&nElementos);
                printf("\nInforme os dados dos nos da arvore:\n");
                raiz = NULL;
                for(i = 0; i < nElementos; i++){
                    scanf("%d", &dadosDosElementos);
                    raiz = insercao(raiz, dadosDosElementos);
                }
                break;
            case 2:
                printf("\nInforme um dado para o novo no: ");
                scanf("%d", &dadosDosElementos);
                raiz = insercao(raiz, dadosDosElementos);
                break;
            case 3:
                printf("\nInforme um dado para o novo no: ");
                scanf("%d", &dadosDosElementos);
                raiz = excluir(raiz, dadosDosElementos);
                break;
            case 4:
                printf("\nSequencia em pre-ordem:\n");
                preOrdem(raiz);
                printf("\n\nSequencia em ordem:\n");
                emOrdem(raiz);
                printf("\n\nSequencia em pos-ordem\n");
                posOrdem(raiz);
                printf("\n");
                break;
        }
    }while(opcao != 5);

    return 0;
}
int main (){
	srand(time(NULL));
	arv* arvIdade  = NULL;
	arv* arvNome = NULL;
	arv* arvAltura = NULL;
	lista* listaOrdenada = NULL;
	pessoa* estranho;
	int menu = 0;
	int submenu =0;
	int height =0;
	
	
	for(int i =0; i<TAM_INI; i++){
		estranho = criarPessoaAleatoria();
		if(i<5){
			estranho->idade = 15;
		}if(i<11&&i>=5){
			//use letras minusculas para o nome para nao ter problema com o strcmp
			estranho->nome ="jose";
		}if(i<16&&i>=10){
			estranho->altura =1.70;
		}
		arvNome = inserirPorNome(arvNome,estranho);	
		arvIdade = inserirPorIdade(arvIdade,estranho);	
		arvAltura = inserirPorAltura(arvAltura,estranho);
		
	}

	while(1){
	menu = 0;
	printf("-------------------------------------\ \n");
	printf("Filtragem de Objetos\n");
	printf("1 - Imprimir arvore filtrada pelo nome.\n");
	printf("2 - Imprimir arvore filtrada pela idade.\n");
	printf("3 - Imprimir arvore filtrada pela altura.\n");
	printf("4 - Imprimir arvore filtrada pelos elementos idicados pelo usuario.\n");
	printf("5 - Imprimir a altura das Arvores.\n");
	printf("6 - Sair.\n");
	printf("Selecione um iem de menu: ");
	scanf("%d",&menu);
	
	if(menu == 2){
		emOrdem(arvIdade);
	}else if( menu == 1){
		emOrdem(arvNome);
	}else if(menu == 3){
		emOrdem(arvAltura);
	}else if(menu ==4){
		while(1){
			submenu = 0;
			printf("-------------------------------------\ \n");
			printf("Menu de filtragem por prioridades.\n");
			
			printf("1 - Prioridade nome seguido por idade.\n");
			printf("2 - Prioridade nome seguido por altura.\n");
			printf("3 - Prioridade idade seguido por nome.\n");
			printf("4 - Prioridade idade seguido por altura.\n");
			printf("5 - Prioridade altura seguido por nome.\n");
			printf("6 - Prioridade altura seguido por idade.\n");
			printf("7 - Retornar.\n");
			printf("Selecione um iem de menu: ");
			scanf("%d",&submenu);
			
			if(submenu == 1){
				
				listaOrdenada = listaEmOrdem(arvNome);
				
				if(listaOrdenada != NULL){
					listaOrdenada = prioridadeNomeIdade(listaOrdenada);
					imprimirLista(listaOrdenada);
				}
				
				
			}else if(submenu==2){
				
				listaOrdenada = listaEmOrdem(arvNome);
				imprimirLista(listaOrdenada);
				if(listaOrdenada != NULL){
					listaOrdenada = prioridadeNomeAltura(listaOrdenada);
					imprimirLista(listaOrdenada);
				}
			
			}else if(submenu==3){
				
			listaOrdenada = listaEmOrdem(arvIdade);

				if(listaOrdenada != NULL){
					listaOrdenada = prioridadeIdadeNome(listaOrdenada);
					imprimirLista(listaOrdenada);
				}
			}else if(submenu==4){
				
				listaOrdenada = listaEmOrdem(arvIdade);
				if(listaOrdenada != NULL){
					listaOrdenada = prioridadeIdadeAltura(listaOrdenada);
					imprimirLista(listaOrdenada);
				}
				
				
			}else if(submenu==5){
				listaOrdenada = listaEmOrdem(arvAltura);
				if(listaOrdenada != NULL){
					listaOrdenada = prioridadeAlturaNome(listaOrdenada);
					imprimirLista(listaOrdenada);
				}
				
				
			}else if(submenu==6){
				
				listaOrdenada = listaEmOrdem(arvAltura);
				if(listaOrdenada != NULL){
					listaOrdenada = prioridadeAlturaIdade(listaOrdenada);
					imprimirLista(listaOrdenada);
				}
			
			}else if(submenu == 7){
				break;
			}
		
			
		}
		
		
	}else if(menu == 5){
		int height = altura(arvNome);
		printf("Altura da Arvore por Nome eh: %d\n", height);
		height = altura(arvIdade);
		printf("Altura da Arvore por Idade eh: %d\n", height);
		height = altura(arvAltura);
		printf("Altura da Arvore por Altura eh: %d\n", height);
	}else if(menu == 6){
		return 0;
	}

	}