Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
  Derniers articles
  • Comment coder une racine carrée en …
  • Comment faire pour créer un ensembl…
  • Comment faire un fichier RES 
  • Les inconvénients des langages de p…
  • Comment créer un rapport de projet …
  • Comment programmer en MIPS 
  • Comment trouver des dossiers manquan…
  • Comment lire un tuyau Séparé ligne…
  • Différence entre la grammaire régu…
  • Comment déterminer la Orthagonal en…
  •   Computer Programming Languages
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Computer Programming Languages

    Comment stocker une recherche binaire arbre dans un fichier

    Un arbre binaire de recherche est une structure de données dans laquelle les enregistrements de données , appelées «nœuds», ont pointeurs vers d'autres nœuds , appelés «enfants». Cela donne les noeuds , quand graphiquement sur ​​, une forme semblable à un arbre généalogique . Les nœuds reçoivent leur place dans l'arbre selon qu'ils évalueraient comme supérieur ou inférieur à d'autres nœuds. Enfants laissés sont toujours inférieures à leurs parents , les enfants toujours raison arbres de recherche more.Binary sont importants en informatique , car ils peuvent être à la fois triés et fouillé , en moyenne, en O ( n log n) . Choses que vous devez
    compilateur
    existant binaire arbre de recherche
    Afficher plus Instructions
    1

    Créer une fonction de stockage qui reçoit le nœud racine. Si vous travaillez avec des arbres dans l'informatique, l'algorithme le plus efficace sera presque toujours récurrent et le stockage de l'arbre dans un fichier ne fera pas exception . Voici un squelette de l'échantillon de la fonction de sauvegarde récursive (en Java). Magasin public void (Node n ) throws IOException {...}
    2

    écrire des données sur le nœud racine dans un fichier. Cela va utiliser «pré -ordre " (Root, Gauche enfant, le droit enfant ) pour passer en revue tous les nœuds de l'arbre , parce que cette méthode de parcours , il sera plus facile de reconstruire l'arbre de l'ordre des nœuds dans le fichier . La fonction récursive ressemble maintenant à ceci : magasin public void (Node n ) throws IOException {write ( savefile , n) ;} magasin devrait s'appeler avec l' enfant de gauche : Magasin public void (Node n ) throws IOException {write ( savefile , n ) ; magasin ( n.left );} magasin devrait s'appeler à l'enfant le droit : Magasin public void (Node n ) throws IOException {write ( savefile , n) ; magasin ( n.left ) ; magasin ( n.right ) ; }
    3

    Double- vérifier que la fonction passe la liste récursive. Pour éviter toute erreur de débordement de pile , toujours vérifier que la fonction récursive remplit les conditions suivantes : Est-ce que la fonction possède un état de sortie? Oui , tant que l'arbre n'est pas d' une profondeur infinie , elle finira par atteindre un nœud qui n'a ni enfant gauche ou la droite et la exit.Does chaque itération de la fonction se rapprocher de l'état de sortie? Oui , en supposant que l'arbre n'est pas circulaire et aucun noeud a l'un de ses ancêtres en fonction child.The passe la liste.
    4

    Reconstruire à partir du fichier . Quand vient le temps de charger l'arbre à partir du fichier , vous aurez simplement à insérer chaque nœud dans l'arbre comme il est chargé à partir du fichier en utilisant votre algorithme d'insertion standard. Cela devrait commencer à la racine et se frayer un chemin vers le bas à l'aide de pré -ordre , en plaçant le nouveau nœud dans le premier espace vide dans lequel il va s'insérer. Ceci devrait reconstruire l'arbre exactement comme il était initialement composée en O ( n log n) en moyenne .

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment passer des paramètres à une applet 
  • Comment faire pour activer le bouton Supprimer dans DataGridView dans Winforms 
  • Comment faire pour convertir programmation couleur RVB en CMJN 
  • Comment appeler une fonction dans QBasic 
  • Comment utiliser LabVIEW blocs fonctionnels RealTime 
  • Comment faire pour utiliser une route statique persistant 
  • Calculs dans Adobe LiveCycle Enterprise Suite 
  • Comment écrire un programme Software 
  • Comment faire pour convertir Oracle à Exponent 
  • Comment faire pour modifier la hauteur et largeur sur Mouseover 
  • Connaissances Informatiques © http://www.ordinateur.cc