Accueil Finances personnelles Heaps binaires et arbres de recherche binaire utilisés dans les algorithmes - dummies

Heaps binaires et arbres de recherche binaire utilisés dans les algorithmes - dummies

Vidéo: Le principe du Tri par tas. Partie 1 2025

Vidéo: Le principe du Tri par tas. Partie 1 2025
Anonim

Un type particulier de structure arborescente est le tas binaire, qui place chacun des éléments du nœud dans un ordre spécial. Les arborescences de recherche vous permettent de rechercher rapidement des données. Obtenir des éléments de données, les placer dans un ordre trié dans un arbre, puis rechercher dans cet arbre est l'un des moyens les plus rapides de trouver des informations.

Dans un tas binaire, le noeud racine contient toujours la plus petite valeur. Lorsque vous regardez les branches, vous voyez que les branches de niveau supérieur ont toujours une valeur plus petite que les branches et les feuilles de niveau inférieur. L'effet est de garder l'arbre équilibré et dans un ordre prévisible afin que la recherche devient extrêmement efficace. Le coût est en gardant l'arbre équilibré.

Parmi toutes les tâches effectuées par les applications, la recherche est la plus longue et la plus demandée. Même si l'ajout de données (et le tri ultérieur) nécessite un certain temps, l'avantage de créer et de maintenir un ensemble de données provient de son utilisation pour effectuer un travail utile, ce qui signifie qu'il doit rechercher des informations importantes. Par conséquent, vous pouvez parfois vous en sortir avec une fonctionnalité CRUD moins efficace et même une routine de tri moins qu'optimale, mais les recherches doivent être aussi efficaces que possible. Le seul problème est qu'aucune recherche n'effectue toutes les tâches avec une efficacité absolue, vous devez donc peser vos options en fonction de ce que vous attendez de faire dans le cadre des routines de recherche.

Deux des méthodes de recherche les plus efficaces impliquent l'utilisation de l'arbre de recherche binaire (BST) et du tas binaire. Les deux techniques de recherche s'appuient sur une structure arborescente pour contenir les clés utilisées pour accéder aux éléments de données. Cependant, l'arrangement des deux méthodes est différent, ce qui explique pourquoi l'un a des avantages sur l'autre lorsqu'il exécute certaines tâches. Cette figure montre l'arrangement pour un BST.

La disposition des touches lors de l'utilisation d'un BST.

Notez comment les touches suivent un ordre dans lequel des nombres plus petits apparaissent à gauche et des nombres plus grands apparaissent à droite. Le nœud racine contient une valeur qui se trouve au milieu de la plage de touches, ce qui donne au BST une approche équilibrée facile à comprendre pour stocker les clés. Comparez cet arrangement au tas binaire montré ici.

La disposition des clés lors de l'utilisation d'un tas binaire.

Chaque niveau contient des valeurs inférieures au niveau précédent et la racine contient la valeur de clé maximale pour l'arborescence. De plus, dans ce cas particulier, les valeurs les plus basses apparaissent à gauche et les plus grandes à droite (bien que cet ordre ne soit pas strictement appliqué). La figure représente en fait un tas max binaire. Vous pouvez également créer un tas binaire min dans lequel la racine contient la valeur de clé la plus basse et chaque niveau génère des valeurs plus élevées, les valeurs les plus élevées apparaissant dans les feuilles.

Comme indiqué précédemment, BST présente certains avantages par rapport au tas binaire lorsqu'il est utilisé pour effectuer une recherche. La liste suivante fournit quelques-uns des points forts de ces avantages:

  • La recherche d'un élément nécessite un temps O (log n), par rapport au temps O (n) pour un tas binaire.
  • L'impression des éléments dans l'ordre ne nécessite que l'heure O (log n), contrairement à l'heure O (n log n) pour un tas binaire.
  • Trouver le plancher et le plafond nécessite un temps O (log n).
  • La localisation du Kth plus petit / plus grand élément nécessite l'heure O (log n) lorsque l'arbre est correctement configuré.

L'importance de ces temps dépend de votre application. BST a tendance à mieux fonctionner dans les situations où vous passez plus de temps à chercher et moins de temps à construire l'arbre. Un tas binaire a tendance à mieux fonctionner dans les situations dynamiques dans lesquelles les clés changent régulièrement. Le tas binaire offre également des avantages, comme décrit dans la liste suivante:

  • La création des structures requises nécessite moins de ressources car les tas binaires reposent sur des tableaux, ce qui les rend également plus conviviaux.
  • La construction d'un tas binaire nécessite un temps O (n), contrairement à BST, qui nécessite un temps O (n log n).
  • L'utilisation de pointeurs pour implémenter l'arborescence n'est pas nécessaire.
  • S'appuyer sur des variations de tas binaires (par exemple, le tas de Fibonacci) offre des avantages tels que l'augmentation et la diminution des temps clés de O (1) temps.
Heaps binaires et arbres de recherche binaire utilisés dans les algorithmes - dummies

Le choix des éditeurs

Supprimer Distractions à partir d'images HDR avec clonage - mannequins

Supprimer Distractions à partir d'images HDR avec clonage - mannequins

Les images à plage dynamique haute résolution (HDR) ne toujours sortir de votre application HDR préférée à la recherche parfaite. Parfois, les objets qui distraient peuvent détourner l'attention du sujet ou rendre la scène moins désirable. Remarquez la grande ombre sur la gauche dans cette figure? Nuke-le. Sélectionnez l'outil Tampon de clonage (dans Photoshop ou ...

Supprimer Poussière d'images HDR avec clonage - dummies

Supprimer Poussière d'images HDR avec clonage - dummies

Le clonage est l'une des techniques les plus importantes que vous devriez maîtriser si vous voulez un contrôle total sur vos images HDR (High Dynamic Range). La poussière, bien qu'elle ne soit pas toujours un problème, est certainement un irritant pour les reflex numériques. Le problème est causé par l'enlèvement et la remise en place des lentilles. Sans l'objectif, la poussière flotte à travers le trou où ...

Enlever les imperfections dans votre photographie de nourriture - les nuls

Enlever les imperfections dans votre photographie de nourriture - les nuls

En raison de la nature désordonnée de la nourriture et de la photographie ll aura un goutte à goutte supplémentaire, un peu, ou un point de matériel qui doit être rangé après que l'image a été prise. Lorsque vous avez un petit problème qui nécessite un peu de nettoyage, utilisez l'outil Clone Stamp dans Adobe Photoshop pour ranger les ...

Le choix des éditeurs

Poser des questions avant de signer un contrat de réseau publicitaire pour votre maman Blog

Poser des questions avant de signer un contrat de réseau publicitaire pour votre maman Blog

Si vous devenez membre d'un réseau publicitaire, vous n'acceptez pas seulement de recevoir ses revenus publicitaires. Vous acceptez également de livrer des choses très spécifiques aux annonceurs du réseau publicitaire, et vous devez vous assurer de savoir dans quoi vous vous engagez. Il est vraiment important de lire l'accord et tous les formulaires ...

ÉVitent d'être sévères lorsqu'ils appliquent les consignes de la communauté en ligne - dummies

ÉVitent d'être sévères lorsqu'ils appliquent les consignes de la communauté en ligne - dummies

Cela ne signifie pas que tous les problèmes de la communauté en ligne nécessitent des avertissements et des interdictions. Oui, vous voulez étouffer la négativité dans l'œuf, mais non, vous ne voulez pas non plus vous moquer de cela. Parfois, laisser un problème glisser est correct. En tant que community manager, c'est votre travail de savoir ...

ÉVitez les opportunités qui menacent la réputation de votre blog - les nuls

ÉVitez les opportunités qui menacent la réputation de votre blog - les nuls

Lorsque vous associez votre blog maman et votre marque personnelle à un produit ou une marque de l'entreprise, il est inévitable que vous allez tous les deux se frotter les uns aux autres. Qu'on le veuille ou non, vous pouvez vous associer à cette marque.

Le choix des éditeurs

Comment formater des notes dans OneNote 2013 - des nuls

Comment formater des notes dans OneNote 2013 - des nuls

Le processus de mise en forme des notes dans OneNote pour Windows 8 est un peu différent de OneNote 2013 - d'accord, c'est très différent. Voici comment effectuer les principales tâches de mise en forme dans OneNote pour Windows 8. Comment modifier et manipuler du texte dans OneNote Parce que OneNote pour Windows 8 n'a pas de ruban, vous ...

Comment envoyer des notes pour les partager dans OneNote 2013 - des mannequins

Comment envoyer des notes pour les partager dans OneNote 2013 - des mannequins

L'une des méthodes les plus simples de partager une note avec OneNote 2013 est en l'envoyant en tant que fichier à un destinataire de courrier électronique ou même à Microsoft Word ou votre blog. Pour envoyer la note actuelle sous forme de fichier, procédez comme suit: Ouvrez la note que vous souhaitez partager dans OneNote 2013 et sélectionnez ...

Comment synchroniser des notes dans OneNote 2013 - des mannequins

Comment synchroniser des notes dans OneNote 2013 - des mannequins

OneNote 2013 s'éloigne du concept d'enregistrement manuel des fichiers en faveur de les synchroniser. Vous pouvez synchroniser les fichiers automatiquement ou manuellement. Cela vous donne une certaine liberté lors de la gestion de vos fichiers. Comment synchroniser automatiquement dans OneNote OneNote sauvegarde automatiquement vos notes à chaque fois que vous effectuez une modification sur un cahier, une section, ...