Is there HashTable structure in Wolfram Mathematica?
I want to use a Structure like HashTable. Is there similar structure in Wolfram Mathematica?
 Update: Mathematica version 10 introduced the Association data structure (tutorial).  
 There are a number of possibilities.  The easiest possibility, which works well if you don't need to add or delete keys from your table, or change their associated values, is to construct a list of rules with the key on the left-hand side and the value on the right-hand side, and use Dispatch on it.  
 If you do need to change the entries in your table, you can use the DownValues of a symbol as a hash table.  This will support all the operations one commonly uses with hash tables.  Here's the most straightforward way of doing that:  
(* Set some values in your table.*) 
In[1]:=  table[a] = foo; table[b] = bar; table[c] = baz;
(* Test whether some keys are present. *)
In[2]:=  {ValueQ[table[a]], ValueQ[table[d]]}
Out[2]:= {True, False}
(* Get a list of all keys and values, as delayed rules. *)
In[3]:=  DownValues[table]
Out[3]:= {HoldPattern[table[a]] :> foo, HoldPattern[table[b]] :> bar,
HoldPattern[table[c]] :> baz}
(* Remove a key from your table. *)
In[4]:=  Unset[table[b]]; ValueQ[table[b]]
Out[4]:= False
我会说,你可以从框中得到最类似的结构是稀疏数组。
I agree with Pillsy, but see also this answer:
Mathematica Downvalue Lhs
It includes a handy function for getting the keys of a hash table.
链接地址: http://www.djcxy.com/p/35572.html上一篇: 数学中的循环结构
