Maison  >  Article  >  Il existe plusieurs façons d'implémenter un arbre binaire

Il existe plusieurs façons d'implémenter un arbre binaire

藏色散人
藏色散人original
2020-06-29 09:55:043262parcourir

Il existe deux manières d'implémenter des arbres binaires, à savoir : 1. Le stockage séquentiel, qui fait référence à l'utilisation d'une table de séquence pour stocker les arbres binaires, et ne s'applique qu'aux arbres binaires complets. 2. Le stockage en chaîne, lorsque ; stocker les arbres binaires en mode lien, chacun En plus de stocker les données du nœud lui-même, un nœud doit également définir deux champs de pointeur lchild et rchild.

Il existe plusieurs façons d'implémenter un arbre binaire

Arbre binaire

Cinq formes de base : arbre binaire vide, arbre binaire avec uniquement un nœud racine, arbre binaire avec uniquement nœud racine Arbre binaire avec nœud et sous-arbre gauche TL, arbre binaire avec uniquement nœud racine et sous-arbre droit TR, arbre binaire avec nœud racine, sous-arbre gauche TL et sous-arbre droit TR

Autres arbres binaires : biais arbre binaire, arbre binaire complet, arbre binaire parfait

méthode de mise en œuvre : stockage séquentiel, stockage en chaîne

Le stockage séquentiel des arbres binaires fait référence à l'utilisation de tables séquentielles (tableaux ) pour stocker les arbres binaires. Il convient de noter que le stockage séquentiel ne s'applique qu'aux arbres binaires complets. En d’autres termes, seuls des arbres binaires complets peuvent être stockés à l’aide de tables séquentielles. Par conséquent, si nous voulons stocker séquentiellement des arbres binaires ordinaires, nous devons au préalable convertir l’arbre binaire ordinaire en un arbre binaire complet.

Chaque nœud d'un arbre binaire a au plus deux enfants. Lors du stockage d'un arbre binaire en mode lien, en plus de stocker les données du nœud lui-même, chaque nœud doit également définir deux champs de pointeur lchild et rchild, pointant respectivement vers l'enfant gauche et l'enfant droit du nœud.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Quel est l'algorithme ?Article suivant:Quel est l'algorithme ?