Arvore avl

668 palavras 3 páginas
UNIVERSIDADE PRESIDENTE ANTÔNIO CARLOS – UNIPAC
SISTEMAS DE INFORMAÇÃO

GEOVANE ALVES DE CARVALHO
ALISON DE OLIVEIRA SILVA

aRVORE AVL

IPATINGA – MG
2011

GEOVANE ALVES DE CARVALHO
ALISON DE OLIVEIRA SILVA

aRVORE bINÁRIA

Trabalho apresentado ao Professor Filipe Costa Fernandes, da disciplina Estruturas de Dados II, da turma SINF3, turno noturno, do curso de Sistema de Informação

UNIVERSIDADE PRESIDENTE ANTÔNIO CARLOS
IPATINGA - 2011

Sumário

Sumário 2

código fonte 3

1 objetivo 11

2 Algoritmo original 12

3 Finalizando 12

4 REFERÊNCIAS 14

código fonte

#include #include #include #include

typedef int tipochave;

typedef struct registro { tipochave chave; }registro;

typedef struct no *apontador;

typedef struct no { int fb; //Fator de Balanceamento da AVL. registro reg; //Os dados. apontador esq, dir; //A esquerd e a Direita. }no;

typedef apontador tipodicionario;

//FUNÇÃO PARA RETORNAR A ALTURA ARVORE. int CalculaH(apontador *p){ if (*p == NULL){ return -1; } int HEsq=0 , HDir=0; HEsq = (CalculaH(&(*p)->esq)+1); HDir = (CalculaH(&(*p)->dir)+1); if (HEsq > HDir){ return HEsq; } else{ return HDir; } }

//ROTAÇÂO SIMPLES PARA A DIREITA. void RotacaoDir (apontador *Pai){ apontador aux1 = (*Pai)->dir->esq; apontador aux2 = (*Pai)->dir; (*Pai)->dir->esq = (*Pai); (*Pai)->dir = aux1; (*Pai)= aux2; }

//ROTAÇÂO SIMPLES PARA A ESQUERDA. void RotacaoEsq (apontador *Pai){ apontador aux1 = (*Pai)->esq->dir; apontador aux2 = (*Pai)->esq; (*Pai)->esq->dir =

Relacionados

  • Arvore avl
    5073 palavras | 21 páginas
  • Arvore avl
    840 palavras | 4 páginas
  • Árvore AVL
    5925 palavras | 24 páginas
  • Arvore AVL
    462 palavras | 2 páginas
  • arvore avl
    805 palavras | 4 páginas
  • Arvore AVL
    405 palavras | 2 páginas
  • Arvore avl c++
    1024 palavras | 5 páginas
  • Código de Árvore AVL
    1448 palavras | 6 páginas
  • Avl - arvore binaria
    755 palavras | 4 páginas
  • Arvore avl
    7567 palavras | 31 páginas