Différence entre arbre binaire et l'arbre de recherche binaire

voix
282

Quelqu'un peut -il s'il vous plaît expliquer la différence entre arbre binaire et arbre de recherche binaire avec un exemple ?

Créé 17/06/2011 à 01:42
source utilisateur
Dans d'autres langues...                            


12 réponses

voix
498

arbre binaire: arbre où chaque noeud a jusqu'à deux feuilles

  1
 / \
2   3

Arbre de recherche binaire: Utilisé pour la recherche . Un arbre binaire lorsque l'enfant gauche contient uniquement des noeuds avec des valeurs inférieures du noeud parent, et où l'enfant droit seulement contient des noeuds présentant des valeurs supérieures ou égales au parent.

  2
 / \
1   3
Créé 17/06/2011 à 01:55
source utilisateur

voix
30

Un arbre binaire est composé de noeuds, où chaque noeud contient un pointeur « gauche », un pointeur « droit », et un élément de données. Les points de pointeur « root » au nœud le plus haut dans l'arborescence. Les pointeurs gauche et à droite pointent récursive plus petites « sous - arbres » de chaque côté. Un pointeur null représente un arbre binaire sans éléments - l'arbre vide. La définition formelle récursive est la suivante : un arbre binaire est soit vide (représenté par un pointeur nul), ou est constitué d'un noeud unique, où les pointeurs gauche et droite ( en avant) définition récursive chaque point à un arbre binaire.

Un arbre de recherche binaire (BST) ou « ordonné arbre binaire » est un type d'arbre binaire dans lequel les noeuds sont agencés dans l' ordre: pour chaque noeud, tous les éléments de son sous - arbre gauche sont inférieures au noeud (<), et tous les éléments dans son sous - arbre droit sont supérieurs au noeud (>).

    5
   / \
  3   6 
 / \   \
1   4   9    

L'arbre ci-dessus est un arbre de recherche binaire - le nœud « racine » est un 5, et ses noeuds de sous-arbre gauche (1, 3, 4) sont <5, et ses noeuds de sous-arbre droit (6, 9) sont> 5. récursive, chacun des sous-arbres doivent aussi obéir à la contrainte d'arbre binaire de recherche: dans le sous-arbre (1, 3, 4), le 3 est la racine, le 1 <3 et 4> 3.

Attention au libellé exact des problèmes - un « arbre de recherche binaire » est différent d'un « arbre binaire ».

Créé 05/07/2012 à 16:32
source utilisateur

voix
9

Un arbre de recherche binaire est un type particulier d'arbre binaire qui présente la propriété suivante: pour tout noeud n, chaque valeur du nœud descendant dans le sous-arbre gauche de n est inférieure à la valeur de n, et la valeur de chaque nœud descendant dans le sous-arbre droit est supérieure à la valeur de n.

Créé 27/02/2013 à 14:20
source utilisateur

voix
12

Comme tout le monde a expliqué ci-dessus au sujet de la différence entre arbre binaire et l'arbre de recherche binaire, je suis juste ajoutais comment tester si l'arbre binaire donné est l'arbre de recherche binaire.

boolean b = new Sample().isBinarySearchTree(n1, Integer.MIN_VALUE, Integer.MAX_VALUE);
.......
.......
.......
public boolean isBinarySearchTree(TreeNode node, int min, int max)
{

    if(node == null)
    {
        return true;
    }

    boolean left = isBinarySearchTree(node.getLeft(), min, node.getValue());
    boolean right = isBinarySearchTree(node.getRight(), node.getValue(), max);

    return left && right && (node.getValue()<max) && (node.getValue()>=min);

}

Espérons que cela vous aidera. Désolé si je suis Détourner du sujet que je sentais qu'il convient de mentionner ici ce.

Créé 28/02/2013 à 07:18
source utilisateur

voix
51

Binary Tree est une forme spécialisée d'arbre avec deux enfants (enfants gauche etdroiteenfants). Il est tout simplementreprésentation des données dansstructure dearbre

Binary arbre de recherche (BST) est un type particulier d'arbre binaire qui suitcondition suivante:

  1. noeud enfant gauche est plus petit que son nœud parent
  2. noeud enfant droit est supérieur à son nœud parent
Créé 01/04/2013 à 14:19
source utilisateur

voix
3

Un arbre binaire est un arbre dont les enfants ne sont jamais plus de deux. Un arbre de recherche binaire suit l'invariant que l'enfant gauche doit avoir une valeur inférieure à la clé du nœud racine, alors que l'enfant le droit doit avoir une valeur supérieure à la clé du nœud racine.

Créé 06/06/2013 à 06:21
source utilisateur

voix
3

arbre de recherche binaire: quand afinde est traversal fait sur l'arbre binaire, vous obtenez des valeurs triées des éléments insérés arbre binaire: aucun ordre de tri se trouve dans une sorte de traversal

Créé 19/02/2014 à 02:18
source utilisateur

voix
1

Pour vérifier wheather ou non un Binary Tree est donnée binaire arbre de recherche est ici est une approche alternative.

Traverse Tree In Inorder Mode (c. -à- gauche Enfant -> Parent -> Droit des enfants), traversèrent données nœud magasin dans une variable temporaire permet de dire temporaire , juste avant de le ranger dans température , Vérifiez wheather les données de nœud actuel est plus élevé alors précédente ou non . Ensuite , il suffit briser dehors, arbre n'est pas binaire arbre de recherche traverse autre extrémité jusqu'à ce .

Ci-dessous un exemple avec Java:

public static boolean isBinarySearchTree(Tree root)
{
    if(root==null)
        return false;

    isBinarySearchTree(root.left);
    if(tree.data<temp)
        return false;
    else
        temp=tree.data;
    isBinarySearchTree(root.right);
    return true;
}

Maintenir la température extérieure variable

Créé 04/01/2015 à 17:59
source utilisateur

voix
9

Binary Tree signifie une structure de données qui est composée de noeuds qui peuvent n'avoir deux enfants références.

Binary arbre de recherche ( BST ) d'autre part, est une forme particulière de Binary Tree structure de données où chaque noeud a une valeur comparable, et les petits enfants attachés à une valeur gauche et un enfant plus grand valeur attachée à droite.

Ainsi, tous les BST 's sont Binary Tree mais seulement quelques - uns Binary Tree ' peut aussi être de BST . Prévenez que BST est un sous - ensemble de Binary Tree .

Donc, Binary Tree est plus d'une structure de données générale que Binary Search Arbre . Et aussi , vous devez informer que Binary arbre de recherche est un Sorted arbre alors qu'il n'y a pas un tel ensemble de règles pour générique Binary Tree .

Binary Tree

A Binary Treequi est pas un BST;

         5
       /   \
      /     \
     9       2
    / \     / \
  15   17  19  21

Binary Rechercher Arbre (Arbre triés)

Un arbre binaire de recherche qui est aussi un arbre binaire ;

         50
       /    \
      /      \
     25      75
    /  \    /  \
  20    30 70   80

Binary Recherche Arbre propriété Node

Notifier également que , pour tout noeud parent dans le BST ;

  • Tous les nœuds de gauche ont une valeur inférieure à la valeur du nœud parent. Dans l'exemple supérieure, les noeuds avec des valeurs {20, 25, 30} , qui sont tous situés sur la gauche ( descendants gauche ) de 50, sont plus petits que 50.

  • Tous les nœuds droite ont une plus grande valeur que la valeur du nœud parent. Dans l'exemple supérieure, les noeuds avec des valeurs {70, 75, 80} , qui sont tous situés sur la droite ( descendants droite ) de 50, sont supérieurs à 50.

Il n'y a pas une telle règle pour Binary Tree Node. La seule règle pour Binary Tree Node est d' avoir deux enfants si elle se auto-explique que pourquoi appelé binaire .

Créé 18/03/2016 à 17:41
source utilisateur

voix
4

arbre binaire

Arbre binaire peut être quelque chose qui a 2 enfants et 1 parent. Il peut être mis en œuvre comme liste chaînée ou un tableau, ou avec votre API personnalisée. Une fois que vous commencez à ajouter des règles plus spécifiques en elle, il devient plus arbre spécialisé . La plus commune mise en œuvre connue est que, ajoutez les petits nœuds sur la gauche et les plus grands sur la droite.

Par exemple, un arbre binaire étiqueté de la taille 9 et de la hauteur 3, avec un nœud racine dont la valeur est 2. L' arbre est déséquilibrée et non triés . https://en.wikipedia.org/wiki/Binary_tree

entrez la description d'image ici

Par exemple, dans l'arborescence à gauche, A a 6 enfants {B, C, D, E, F, G}. Il peut être transformé en arbre binaire à droite.

entrez la description d'image ici

Recherche binaire

Recherche binaire est technique / algorithme qui est utilisé pour trouver un objet spécifique sur la chaîne de noeud. Recherche binaire fonctionne sur les tableaux triés .

Recherche binaire compare la valeur cible à l' élément central du tableau; si elles ne sont pas égaux, la moitié dans laquelle la cible ne peut pas mentir est éliminé et la recherche continue sur la moitié restante jusqu'à ce qu'il soit réussi ou la moitié restante est vide. https://en.wikipedia.org/wiki/Binary_search_algorithm

entrez la description d'image ici

Un arbre représentant recherche binaire . Le réseau étant recherché ici est [20, 30, 40, 50, 90, 100], et la valeur cible est de 40.

entrez la description d'image ici

arbre de recherche binaire

Ceci est l' une des implémentations d'arbre binaire. Ceci est spécialisé pour la recherche .

Arbre binaire de recherche et structures de données B-tree sont basées sur la recherche binaire .

Arbres binaires de recherche (BST), parfois appelé commandés ou triées arbres binaires, sont un type particulier de conteneur : structures de données qui stockent « éléments » (tels que les numéros, noms , etc.) dans la mémoire. https://en.wikipedia.org/wiki/Binary_search_tree

Un arbre de recherche binaire de taille et de profondeur 9 3, avec 8 à la racine. Les feuilles ne sont pas dessinées.

entrez la description d'image ici

Et enfin, grand schéma pour la comparaison des performances des structures de données-bien connus et des algorithmes appliqués:

entrez la description d'image ici

Image tirée d' Algorithmes (4e édition)

Créé 26/05/2017 à 18:45
source utilisateur

voix
0

Dans un arbre binaire de recherche, tous les nœuds sont disposés dans un ordre spécifique - nœuds à la gauche d'un nœud racine ont une valeur inférieure à ce qu'elle est la racine, et tous les nœuds à droite d'un nœud ont des valeurs supérieures à la valeur de la racine.

Créé 28/07/2017 à 21:32
source utilisateur

voix
0

Un arbre peut être appelé comme un arbre binaire si et seulement si le nombre maximum d'enfants de l'un des nœuds est de deux.

Un arbre peut être appelé comme un arbre de recherche binaire si et seulement si le nombre maximum d'enfants de l'un des nœuds est deux fois et l'enfant gauche est toujours plus petit que l'enfant droit.

Créé 27/05/2019 à 17:09
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more