Programação  
 
Conhecimento computador >> Programação >> Programação De Computador Idiomas >> 
Como armazenar uma pesquisa árvore binária para um arquivo
Uma árvore de busca binária é uma estrutura de dados onde os registros de dados, chamados de "nós ", tem ponteiros para outros nós , chamados de " filhos". Isto dá os nós , quando representado graficamente para fora , uma forma semelhante a uma árvore genealógica . Os nós receber o seu lugar na árvore de base sobre se a sua avaliação quanto maior ou menor do que os outros nós . Crianças deixadas são sempre menos do que seus pais , as crianças sempre certas more.Binary árvores de busca são importantes em ciência da computação , porque eles podem ser tanto ordenados e procurou , em média, em O (n log n) . Coisas que você precisa
Compiler
existente árvore de busca binária
Show Mais instruções
1

Criar uma função de armazenamento que recebe o nó raiz . Sempre que você lidar com as árvores em ciência da computação , o algoritmo mais eficaz será quase sempre recursiva e armazenar a árvore para um arquivo não será excepção . Aqui está um esqueleto amostra da função de armazenamento recursiva (em Java). Loja public void (Node n ) throws IOException {...}
2

Escrever dados sobre nó raiz para o arquivo . Isto irá usar " travessia pré- ordem" (Root , Esquerda Criança, Direito da Criança ) para passar por todos os nós da árvore , porque este método de travessia irá torná-lo mais fácil de reconstruir a árvore da ordem dos nós no arquivo . A função recursiva agora fica assim: public void store (Node n ) throws IOException { write ( savefile , n) ;} loja deve chamar -se com o Child Left : loja public void (Node n ) throws IOException { write ( savefile , n ); loja ( n.left );} loja deve chamar-se com o Menino direita: loja public void (Node n ) throws IOException { write ( savefile , n) ; loja ( n.left ); loja ( n.right ); }
3

Confira que a função passa a lista de verificação recursiva. Para evitar erros de estouro de pilha , verifique sempre que uma função recursiva satisfaz as seguintes condições : A função tem um estado de saída? Sim, desde que a árvore não é de profundidade infinita , eventualmente, ele vai chegar a um nó que não tem nem um filho esquerdo ou direito e vai exit.Does a cada iteração da função de aproximar-se do estado de saída? Sim, presumindo-se que a árvore não é circular e nenhum nó tem um de seus próprios ancestrais como uma função child.The passa o checklist.
4

Reconstruir a partir do arquivo . Quando chega a hora de carregar a árvore de volta a partir do arquivo , você simplesmente inserir cada nó na árvore como ele é carregado a partir do arquivo usando o algoritmo de inserção padrão. Isso deve começar na raiz e trabalhar o seu caminho para baixo, usando pré-encomenda travessia , colocando o novo nó no primeiro espaço vazio em que vai se encaixar . Isso deve reconstruir a árvore exatamente como ele foi originalmente composta em O (n log n) , em média.

Anterior :

Próximo : No
  Os artigos relacionados
·Como depurar Com Eclipse JSP 
·Como usar o Device- Mapper Multipath 
·Como ler um arquivo em Fortran 
·Como atualizar o Administrador no ColdFusion 9 
·Tutorial de programação de driver de dispositivo 
·Como Reescrever uma Declaração Then_If 
·Como testar Cordas em Korn Shell 
·Lista de Vantagens da UML 
·Como escrever um número na base 16 
·Como escrever código para criar uma classe Circle 
  Artigos em destaque
·Como criar um While Loop em C 
·Como usar o GridView em C # 
·Como incrementar automaticamente uma compilação Núme…
·Como usar a ferramenta Calculate para CPP 
·Programáveis ​​Jogos para uma TI 86 
·Como combinar Lógica Gates Diagramas 
·Como projetar um programa C + + para calcular Salários…
·Como passar variáveis ​​Shell para AWK 
·Como fazer um projeto no Xcode A partir de uma pasta ex…
·Como Código RSA 
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados