Exemples concrets de structures d'arbres

voix
12

Je cherche quelques exemples de structures d'arbres qui sont utilisés dans les projets logiciels commerciaux / gratuit, modernes ou anciens. Je peux voir des exemples sur wikipedia, mais je suis à la recherche d'exemples plus concrets et comment ils sont utilisés. Par exemple, les clés primaires dans les bases de données sont (ce que j'ai lu) stocké dans la structure de BST ou une variation de la BST (ne hésitez pas à me corriger)

Ma question ne se limite pas les arbres binaires de recherche (BSTS), il peut inclure toute variation comme le rouge-noir, AVL et ainsi de suite.

Créé 23/02/2009 à 14:37
source utilisateur
Dans d'autres langues...                            


17 réponses

voix
6

index de base de données sont normalement stockées sous forme variamts des arbres B * qui, en dépit de leur nom ne sont pas des arbres binaires.

Créé 23/02/2009 à 14:40
source utilisateur

voix
31

Est-il correct si les exemples sont un à-dire génériques bit tad se rapportent à des graphiques et pas nécessairement aux arbres? Le cas échéant, continuez à lire.

  • Inutile de dire que la plupart des parseurs XML / marge bénéficiaire utilisent les arbres. Voir Apache Xerces par exemple. Ou, l'analyseur XSLT Xalan. Merci mathewsdave26 de me le rappeler!

  • PDF est un format basé sur des arbres. Il a un rootnoeud suivi d'un catalognoeud (ce sont souvent les mêmes) suivi d'un pagesnoeud qui a plusieurs enfants pagenoeuds. Les producteurs / consommateurs utilisent souvent une mise en œuvre d'arbre équilibré pour stocker un document dans la mémoire.

  • Jeux d'échecs informatique construire un grand arbre (formation) qu'ils taillent à l'exécution en utilisant heuristiques pour atteindre un mouvement optimal.

  • Flare est une bibliothèque de visualisation écrite dans AS. Vous pouvez vérifier comment sont mis en correspondance les objets de données. En particulier le flare.analyticspaquet utilise fortement une structure graphique, couvrant des arbres , etc.

  • Le réseautage social est le mot à la mode actuelle dans la recherche CS. Il va sans dire que les connexions / relations sont très naturellement modélisés à l'aide de graphiques. Souvent, les arbres sont utilisés pour représenter / identifier les phénomènes les plus intéressants. Comment pouvez-vous répondre à des questions comme « Est-ce que Harry et Sally aucun ami commun (s)? »

  • Certains moteurs physique / jeux très réussis construire des arbres pour simuler avec précision le mouvement humain. Un arbre dans ce cas correspond généralement à un ensemble d'actions; Le contexte déterminera quel chemin est pris pour rendre une réponse particulière.

  • L'apprentissage à base de décision arbre constitue en fait une zone formidable de la recherche sur l'exploration de données. De nombreuses méthodes existent célèbres comme ensachage, stimulant, et les modifications de ceux-ci qui travaillent sur les arbres. Un tel travail est souvent utilisé pour générer un modèle prédictif.

  • Un problème commun dans la bio-informatique est de rechercher les bases de données énormes pour trouver des correspondances pour une chaîne de requête donnée. Tries sont courantes là-bas.

  • Tout à fait quelques commerçants de succès (stock) utilisent des arbres de décision dans leur journée à la négociation de jour - de choisir un métier, pour sortir un. Souvent, ceux-ci ne sont pas codifiées dans un programme informatique, mais écrit quelque part sur le dos de leur ordinateur portable.

Dupe. Voir ce et cela .

Créé 23/02/2009 à 14:40
source utilisateur

voix
11

B dans l'index de base de données B arbres * signifie équilibré, pas binaire. L'arbre est maintenu à une profondeur uniforme pour assurer même temps d'accès.

Créé 23/02/2009 à 14:44
source utilisateur

voix
1

En regardant l'un des produits datawarehouse, vous verrez des moyens astucieux de stockage et de forage dans des dimensions en forme d'arbre. Vous obtenez une structure d'arbre pour l'emplacement (pays, région, État, comté m, ville, etc.) et le temps (année, mois, jour, heure). Ces deux dimensions sont communs dans de nombreux domaines, mais beaucoup d'autres données du monde réel se prête également à l'arbre.

Par exemple, dans le commerce de détail alimentaire, à la racine de l'arbre que vous pourriez avoir l'épicerie, qui peut naviguer dans et produits laitiers, fruits légumes, etc. Suite à un seul fil que vous pourriez avoir. Tins de haricots, au niveau supérieur, vous parlerez des charges de camion, alors vous descendront aux palettes, caisses, tailles d'étain. Tous les différents SKU (unités de maintien de stocks) sont importants pour une personne dans le magasin ou une entreprise. Ensuite, différents types de haricots, différents fournisseurs, fabricants - tous les exemples d'arbres pour la même dimension.

Tous les différents produits forment un arbre massif, avec différentes façons de trancher et dicinng.

Créé 23/02/2009 à 14:53
source utilisateur

voix
1

C ++ comprend un certain nombre de collections (ensemble, multi_set, carte, multi_map) qui sont normalement mises en œuvre comme des arbres rouge-noir, une sorte d'arbre équilibré.

(La norme C de ne requiert pas explicitement cette mise en œuvre, mais c'est la conception la plus simple qui répond aux exigences de complexité.)

Créé 23/02/2009 à 15:01
source utilisateur

voix
0

Dans mon projet, un système de vérification et d'imputation pour des données d'enquête / du recensement, nous utilisons un arbre de décision binaire de décider quelles sont les variables d'un enregistrement ou d'imputer pas imputé. L'arbre de décision binaire nous permet de prendre efficacement des décisions sur les chemins sur l'arbre que nous devrions et ne devrions pas prendre.

Je pense que cette approche (mais peut-être pas seulement les arbres binaires) est utilisé dans des applications d'intelligence artificielle et

Créé 23/02/2009 à 15:30
source utilisateur

voix
5

Les arbres binaires ont été utilisés pour l'espace Paritioning et l'enlèvement des surfaces cachées sur les jeux 3D de vieux, je crois que l'on a été utilisé dans le jeu Doom.

Créé 23/02/2009 à 15:59
source utilisateur

voix
1

Dans un routeur / commutateur place je travaillais , nous avons utilisé un tas de structures d'arbres, pour la table de routage du logiciel , nous avons utilisé un arbre radix (choix assez commun pour une table de routage IP).

Notre mise en œuvre OSPF utilisation des arbres rouge-noir , notre BGE mise en œuvre fait usage de skiplists .

Techniquement skiplists ne sont pas des structures d'arbres, mais ils sont en pratique très similaires, et ils sont vraiment cool.

Nous avons certainement utilisé des tas un peu aussi bien en pensant à ce sujet , il a été un moment que je travaillais là.

Créé 26/02/2009 à 14:13
source utilisateur

voix
1

les requêtes DNS .. quoi que ce soit en utilisant une carte utilise AVL

Créé 02/03/2009 à 22:49
source utilisateur

voix
1

System.Collections.Generic.SortedList <T> utilise un arbre de recherche binaire comme la mise en œuvre sous - jacente. La même chose est vrai pour System.Collections.GenericSortedDictionary <T> . Tout code utilisant SortedList <T> ou SortedDictionary <T> utilise un arbre de recherche binaire.

Créé 03/03/2009 à 17:35
source utilisateur

voix
4
  • Écrire un analyseur simple descente récursive, et l'ont générer un arbre d'analyse syntaxique.

  • Bill-Of-Matériaux structure utilisée dans la fabrication (par exemple une automobile se compose de sous-ensembles, de manière récursive, jusqu'à les écrous et boulons).

  • Table des symboles (tel qu'il est utilisé dans un compilateur).

  • Plan comptable utilisé dans la gestion du projet. Un projet dans son ensemble a sous-projets, dont les frais peuvent être appliqués.

  • la structure organisationnelle de l'entreprise: divisions, départements, etc.

  • Table des matières pour un document.

  • Descendents d'une personne, ancêtres d'une personne.

  • Toute Lisp expression, y compris tout programme Lisp.

Créé 03/03/2009 à 18:59
source utilisateur

voix
7
  • Votre système de fichiers est une structure arborescente. Donc, vérifier la source à un système de fichiers gratuit.

  • Votre compilateur génère un AST à partir du code source, comme une étape intermédiaire. Donc , vérifier la source à un compilateur libre.

Créé 03/03/2009 à 19:14
source utilisateur

voix
0

Nous utilisons une structure arborescente pour modéliser un système de classification de la pièce. Les pièces sont classées en « classes » qui ont des classes parents et ainsi de suite. Les classes de niveau supérieur conduisent le texte pour les onglets dans notre interface de catalogue. Les cours sont également utilisés pour appliquer des règles de prix, identifier les « points chauds » sur un véhicule où les pièces sont affichées dans un « configurateur », etc. Nous modélisons l'arbre dans SQL en utilisant des ensembles imbriqués de Joe Čelko et les charger sur la demande en mémoire pour une meilleure performance. Les requêtes les plus courantes que nous faisons sont « qui sont mes descendants » et «est cette classe un de mes ancêtres?

Très utile

Créé 03/03/2009 à 19:19
source utilisateur

voix
3

fonctions de remplissage automatique dans le logiciel (par exemple. moteur de recherche « suggestions », type IDE / complétion de symboles, noms de livres électroniques et l'adresse, etc.) sont souvent mis en œuvre comme essais, qui sont des structures d'arbres.

Créé 03/03/2009 à 21:31
source utilisateur

voix
0

Il y a un Treap mis en œuvre dans ActionScript. Sources:

Le Treap fait partie du AS3Commons cadre Collections . Un Treap modifié est utilisé pour sauvegarder les collections SortedSet et SortedMap inclus.

Créé 05/02/2010 à 09:36
source utilisateur

voix
0

Classification des objets en général est très souvent fait à l' aide d' arbres. Et très souvent, un graphique serait beaucoup plus approprié qu'un arbre, mais un arbre offre deux grands avantages sur un graphique:

  • Il peut être représenté sous la forme d'une liste (imbriquée). Par exemple, il est beaucoup plus facile de montrer un grand arbre sur le papier (avec des titres, sous-titres, paragraphes et listes imbriquées) ou sur un écran d'ordinateur d'un graphique.
  • Vous pouvez indiquer un élément dans l'arbre à l'aide d'une simple chaîne de chemin (ou une pile), par exemple « http / StackOverflow.com / Utilisateurs / Dimitri C », ce qui est beaucoup plus difficile à faire dans un graphique.
Créé 05/02/2010 à 09:43
source utilisateur

voix
0

Mettez-vous comme la racine de l'arbre et de faire maintenant vos parents comme les enfants et les parents d'arbres des parents que leurs enfants d'arbres et cela peut faire un cas d'utilisation complète de l'arbre.

Ainsi, la mise en œuvre quelque chose où la hiérarchie complète de la famille exigent que vous pouvez utiliser l'arbre pour mettre en oeuvre.

Créé 29/04/2018 à 17:48
source utilisateur

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