En fait , ce que je veux savoir comment mettre en œuvre l'ordre dans l' algorithme de Traversal pour un BST , mais pour le mettre en œuvre en utilisant uniquement l' insertion, la suppression et la pré-commande des algorithmes traversal pour un BST.
Vous pouvez supposer que vous donne les implémentations pour des algorithmes standards BST pour l' insertion, la suppression et traversal pré-commande.
comment mettre en œuvre BST afinde traversal?
source utilisateur Tharindu Rusira
Dans d'autres langues...
Hmmm ... Disons que nous avons + à la racine et 1 au niveau du noeud gauche et 2 à droite nœud. La pré-commande sera + 1 2et commande sera 1 + 2.. la différence est que le 1er et 2 ont été échangés, donc si vous avez l' insertion et la suppression , vous pouvez récursive échanger chaque valeur de nœud racine avec sa valeur de nœud gauche, puis à l' aide de pré-commande traverser l'arbre qui retournera provoquera un parcours infixe.
Je ne sais pas si cela est le chemin à parcourir, mais je l'espère n'aide.
Je pense avoir trouvé une solution. :)
nous avons traversal pré-commande, insertion et méthodes de suppression.
Supposons que nous donne un BST.
ce que nous faisons est, nous fournissons la méthode traversal pré-commande avec le BST donné. depuis traversal précommande aller toujours au nœud parent d'abord, nous supprimer et insérer chaque racine (parce que la racine est le premier parent nous rencontrons) nœud récursive jusqu'à l'arbre secondaire gauche de la racine est nulle.
maintenant vous commencez à supprimer la racine jusqu'à ce qu'il n'y a pas de nœuds left.Put ces noeuds supprimés dans un tableau ou où vous voulez. Vous obtiendrez l'ensemble des noeuds trié. (Les nœuds seront supprimés dans une plus petite Règlement.Le trié et ainsi de suite ...)