243 votes

Quelle est la différence entre une Carte et un Dictionnaire?

Quelle est la différence entre un Map et Dictionary? Je ne demande pas comment ils sont définis dans la langue X ou Y (ce qui semble être ce que généralement les gens se posent ici), je veux savoir quelle est leur différence en théorie.

Je connais Map est un objet que les cartes des clés à des valeurs. N'est-ce pas un Dictionary le même? Merci

319voto

Deux termes pour la même chose

"Carte" est utilisé par Java, C++
"Dictionnaire" est utilisé par .Net, Python
"Tableau associatif" est utilisé par Javascript, PHP

"Carte" est le bon terme mathématique, mais il est à éviter car il a séparé de sens dans la programmation fonctionnelle.

Voir ici.

21voto

Edwin Buck Points 33097

L'un est un ancien terme pour l'autre. Généralement le terme Dictionnaire a été utilisé avant le terme mathématique de la Carte a pris le dessus. Aussi, les Dictionnaires ont tendance à avoir un type de clé de la Chaîne, mais ce n'est pas vrai à 100% partout.

3voto

Paul Nathan Points 22910

Généralement je suppose qu'une carte est soutenu par une table de hachage; il connote un non ordonnée magasin. Dictionnaires signifier un ordre magasin.

Il y a un arbre dictionnaire appelé un Trie.

En Lisp, il pourrait ressembler à ceci:

(a (n (d t)) n d )

Qui encapsule les mots:

  • un
  • et
  • ant
  • un
  • ad

La traversée du haut de la feuille des rendements en un mot.

1voto

OscarRyz Points 82553

Oui, ils sont les mêmes, vous pouvez ajouter "Tableau Associatif" pour le mix.

à l'aide de Hashtable ou Hash souvent fait référence à la mise en œuvre.

0voto

SLaks Points 391154

Ce sont deux termes différents pour le même concept.
Hashtable et HashMap également référence au même concept.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X