Structures de données Python: l'arbre des dons

Les arbres Python ressemblent beaucoup à des listes chaînées, mais avec un ordre hiérarchique. Les arbres sont composés de nœuds reliés à d'autres nœuds. Le nœud inférieur qui n'a pas de lien est appelé feuilles . Le nœud lié à un autre nœud est connu sous le nom de parent, et les nœuds liés sont les enfants.

Une arborescence est généralement construite avec une large gamme de nœuds ou une structure profonde en cascade. Vous pouvez donc dire qu'un arbre est large ou profond .

Un arbre large vs une structure arborescente profonde

Une version efficace d'une structure arborescente est connue sous le nom d'arbre de recherche binaire. C'est là que vous autorisez uniquement un nœud parent à avoir deux nœuds enfants. Le nœud à gauche a une valeur plus petite que le nœud à droite. Construire un arbre comme celui-ci rend très efficace la traversée et la recherche d'une valeur particulière.

exemple d'arborescence binaire

Dans l'exemple ci-dessus, si je voulais trouver la valeur de 98 à partir de 39, je me déplacerais à droite comme 98> 39 - de 70 à nouveau à droite - à partir de 97, à droite, et en trois coups, j'ai trouvé le nœud souhaité.

Construisons donc un nœud d'arbre en python et voyons-en un en action. Tout ce dont nous aurons besoin pour lancer un nœud d'arbre est un nom. Nous lui attribuerons automatiquement une liste vide pour contenir tous les nœuds enfants à venir.

Si vous aviez lu mes articles précédents sur la structure de données python, cela devrait vous sembler familier.

Maintenant, comme pour toute structure de données, nous devons garder à l'esprit les fonctionnalités pratiques que nous voulons que notre arbre ait. L'ajout d'un nœud et la suppression d'un nœud sont des choix évidents et faciles à mettre en œuvre.

Pour ajouter, j'utiliserai la méthode append () , et pour supprimer je vais simplement parcourir la liste self.children et ajouter à nouveau tous les nœuds à l'exception du nœud que je veux supprimer.

Ensuite, nous voudrons parcourir l'arborescence pour trouver les informations souhaitées. Pour créer cette méthode, nous allons commencer avec une liste vide à remplir avec chaque nœud à visiter. Tant que ce nœud a des nœuds enfants, nous le sortirons et l'ajouterons à la liste des nœuds à visiter.

Selon vous, où une structure de données comme celle-ci serait-elle le mieux utilisée? Peut-être que si nous ajoutions une logique pour accéder aux nœuds, nous pourrions compartimenter un grand nombre de privilèges qu'un utilisateur pourrait avoir.

Les arbres de données sont un outil formidable et largement utilisé dans le monde du codage. J'espère que cette brève introduction vous a au moins donné un aperçu des raisons pour lesquelles vous voudriez connaître ces structures.

Suggested posts

Recherche d'informations sur les noms de domaine

Un extrait de Small, Sharp Software Tools par Brian P. Hogan

Recherche d'informations sur les noms de domaine

Lorsque vous faites une demande à facebook.com, votre ordinateur recherche le nom de domaine pour traduire ce nom de domaine en une adresse IP afin que votre ordinateur puisse établir cette connexion.

Comment exécuter gratuitement les plugins ChatGPT avec Langchain

Comment exécuter gratuitement les plugins ChatGPT avec Langchain

Vous devez avoir entendu parler de tous les nouveaux plugins ChatGPT puissants comme le navigateur, l'interpréteur de code, etc. Mais il y a un problème, l'accès aux plugins est limité à une liste d'attente et donc beaucoup n'y ont pas accès.

Related posts

La performance solo de la fille aux cheveux roux

En mission de Hayden, Katie se filme en train de se masturber.

La performance solo de la fille aux cheveux roux

Il était minuit passé lorsque Hayden a ramené Katie à son dortoir universitaire après leur soirée ensemble. Elle avait un cours tôt le matin et n'avait plus de vêtements de rechange après être restée avec lui la nuit précédente.

Deux ans en design - Le bon, le mauvais et le laid…

Deux ans en design - Le bon, le mauvais et le laid…

"Hey Siri, joue Me Dive d'Olivia Dean." C'était en mai 2021 lorsque j'ai commencé mon stage à la Future Academy Africa à Akure, au Nigeria.

VIE SANS LIMITE

Quand tu grandis, on a tendance à te dire que le monde est comme il est et que ta vie est juste de vivre ta vie à l'intérieur du monde, sans jamais risquer ta vie, juste suivre un chemin tracé et mourir à la fin, et essayer de ne pas cogner trop les murs. Mais c'est une vie très limitée.

Créer un environnement de travail sûr

Créer un environnement de travail sûr

« Il me protégera quand je serai en danger. Il me cachera dans sa tente.