Skip to main content

Qu'est-ce qu'un arbre de recherche?

Une arborescence de recherche est une structure de données utilisée dans la programmation informatique pour contenir et organiser une liste de données. Chaque arbre de recherche est composé d'un ensemble de nœuds ordonnés. Ces nœuds peuvent être connectés à zéro ou plusAutres nœuds. Les nœuds individuels contiennent des données ainsi que des liens vers tous les autres nœuds. Les données contenues dans les nœuds de l'arbre sont très souvent commandées d'une manière ou d'une autre pour permettre aux algorithmes efficaces de rechercher,Insérez et supprimez facilement les nœuds.

Les nœuds d'un arbre de recherche sont décrits avec quatre termes importants. Le haut d'un arbre, où se trouve le premier nœud, est appelé la racine.Si un nœud contient des liens vers les sous-nodes, ce nœud est connu comme un parent. Les nœuds qui sont sous le parent sont appelés enfants, et tout nœud qui n'a pas de nœuds enfants estappelé une feuille. Ainsi, un nœud racine est identifié car il n'a pas de parent, et les nœuds de feuille n'auront pas d'enfants.

Un programme est capable de se déplacer à travers une arborescence pour rechercher des données en commençant à un nœud particulier, en effectuant une vérification conditionnelle, puis en passant au nœud logique suivant si les données requises ne sont pas présentes. Selon la structure de donnéesUtilisé, cette recherche peut prendre un temps variable. Si l'arbre de recherche est organisé pendant le processus d'ajout et de suppression des nœuds, la recherche peut être très rapide. Lorsqu'un arbre estassemblé au hasard, n'est pas trié ou permet à plusieurs parents, la recherche peut prendre très longtemps.

Un facteur qui affecte l'utilisation des arbres de recherche est la question de l'équilibre. Un arbre équilibré estUn dans lequel les enfants droits et gauche du nœud racine contiennent soit la même profondeur de nœuds enfants, soit à un nombre de nœuds l'un de l'autre. La profondeur d'un arbre est le nombre de nœuds dela feuille la plus basse d'un arbre à la racine. Un arbre déséquilibré pourrait avoir tous les nœuds d'un seul côté ou avoir tous les nœudsdisposés de manière linéaire sans branches.Ces arbres utilisent des opérations telles que la rotation des arbres pour aider à maintenir l'équilibre tout en préservant l'ordre des données dans les feuilles. Bien que la réalisation des rotations d'arbres puisse ralentir un programme lors de l'ajout et de la suppression des nœuds,Ceci est contré par la vitesse à laquelle les données peuvent être récupérées.

Bien qu'il existe de nombreux types d'arbres de recherche, la structure de données d'arborescence la plus courante est un arbre de recherche binaire. Ce type de données se composeà deux nœuds enfants. Il n'y a qu'un seul nœud racine, et toutes les feuilles de l'arbre sont ordonnées de gauche à droite en valeurs ascendantes en fonction des données qu'ils détiennent. BeaucoupDes algorithmes existent pour les arbres de recherche binaires qui peuvent rendre les données de commande très faciles.

Il n'y a pas de norme unique ILa modération des nœuds d'arborescence de recherche.La structure de données conçue pour aider à l'achèvement des opérations nécessaires demandées par le programme. Certaines bibliothèques de programmation standard incluent même leurs propres implémentations internes des arbres de recherche.