Indice denso

764 palavras 4 páginas
#include
#include
#include

typedef struct car
{
int codigo; char placa[30]; char modelo[30]; int ano;
}car;

typedef struct arvore
{
int inf; int pos; struct arvore *esq; struct arvore *dir;
}arvore;

typedef struct in
{
int inf,pos,e,d;
}in;

int op; in ind;

void menu ()
{ printf("\n\n\tIndice Denso\n"); printf("\n1-Carregar arquivo principal."); printf("\n2-Criar arquivo de indice."); printf("\n3-Buscar um elemento."); printf("\n4-Imprimir arquivo de indice."); printf("\n5-Sair.\n\n "); scanf("%i",&op);
}

arvore* remove_no(arvore *arv, car carro)
{
arvore *no;

if(arv->inf==carro.codigo) { if(arv->esq==NULL && arv->dir==NULL) { free(arv); return NULL; } else if(arv->esq==NULL || arv->dir==NULL) { if(arv->esq == NULL) no=arv->dir; else no=arv->esq; free(arv); return no; } else { no=arv->dir; while(no->esq!=NULL) { no=no->esq; } arv->inf=no->inf; arv->pos=no->pos; carro.codigo=no->inf; arv->dir=remove_no(arv->dir, carro); carro.codigo=arv->inf; return arv; } } else { if(carro.codigoinf) arv->esq=remove_no(arv->esq, carro); else arv->dir=remove_no(arv->dir, carro); return arv; }
}

int altura(arvore *arv)
{
int esq,dir;

if(arv==NULL) return 0; esq=altura(arv->esq); dir=altura(arv->dir); if(esq>dir) return esq+1; else return dir+1;
}

arvore*

Relacionados

  • Indices
    759 palavras | 4 páginas
  • Indeces
    2925 palavras | 12 páginas
  • Solução de matrizem com algoritmos numéricos
    1197 palavras | 5 páginas
  • A Refração e Suas Leis
    1966 palavras | 8 páginas
  • Indexacao E Tipo De Dados
    2599 palavras | 11 páginas
  • 02 Estruturas de Indexa o
    2958 palavras | 12 páginas
  • Refração
    2796 palavras | 12 páginas
  • Determinação do Índice de Refração, º Brix e Densidade
    1497 palavras | 6 páginas
  • Estatistica
    1638 palavras | 7 páginas
  • origem da lingua espanhola
    3075 palavras | 13 páginas