Enviado em 11/04/2012 - 22:39h
Pessoal tudo bem ?
typedef long TipoChave;
typedef struct Registro {
TipoChave Chave;
/* outros componentes */
} Registro;
typedef struct No * Apontador;
typedef struct No {
Registro Reg;
Apontador Esq, Dir;
} No;
typedef Apontador TipoDicionario; //Estrutura que representa a árvore
void Pesquisa(Registro *x, Apontador *p)
{ if (*p == NULL)
{ printf("Erro : Registro não esta presente na arvore\n");
return;
}
if (x->Chave < (*p)->Reg.Chave)
{ Pesquisa(x, &(*p)->Esq);
return;
}
if (x->Chave > (*p)->Reg.Chave)
Pesquisa(x, &(*p)->Dir);
else
*x = (*p)->Reg;
}
void Insere(Registro x, Apontador *p)
{ if (*p == NULL)
{ *p = (Apontador)malloc(sizeof(No));
(*p)->Reg = x; (*p)->Esq = NULL; (*p)->Dir = NULL;
return;
}
if (x.Chave < (*p)->Reg.Chave)
{ Insere(x, &(*p)->Esq); return; }
if (x.Chave > (*p)->Reg.Chave)
Insere(x, &(*p)->Dir);
else
printf("Erro : Registro ja existe na arvore\n");
}
for (i = 0; i < max; i++)
{ x.Chave = vetor[i]; //vetor [i] é a chave aleatória que é gerada por outra função
Insere(x, &Dicionario); //Chama função e passa a chave e a árvore parar inserir
printf("Inseriu chave: %d\n", x.Chave);
}
IA local no bolso, novo visual no Raspberry Pi OS e mais destaques do software livre
Kernel turbinado, compatibilidade em alta e debate sobre sustentabilidade: o dia no mundo Linux
Kernel turbinado e GNOME 49 dominam o giro do dia no mundo Linux
Novidades Linux: Kernel 6.17, distros em ebulição e segurança em foco
Kernel ganha novos linters Rust e distros avançam com recursos de IA
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Orientação para instalar o Warsaw - módulo de proteção do Banco do Bra... (8)
systemd-resol... precisa ser reiniciado periodicamente (5)
Alguém que utilize o Warsaw do BB no Ubuntu 24.04 [RESOLVIDO] (6)
Fedora não reconhece James Donkey 102 Wireless Gaming Mouse (2)