2010-07-17 20 views
4

一類Python字典在Python很容易:如何表示用C

x = {} 
x['USD'] = "Dollars" 
x['CLP'] = "Pesos" 

y = {'lat': 23.678900, 'lng': 121.451928, 'name': "Sin City"} 

我覺得這些類型的問題已經解決了,所以我在哪裏可以買到有關C語言詞典的信息?我不想重新發明輪子。

如何在C中實現字典?

+1

您可能希望瞭解哈希表:http://en.wikipedia.org/wiki/Hash_table這是一個非常重要的數據結構,瞭解它們的工作原理以及使用的好處(和缺點)其中一個非常重要,它會讓你更好地理解python字典的優點和缺點。 – Alan 2010-07-17 01:50:36

回答

1

它們被稱爲散列表或散列映射。

C++有很多標準的。

Simple hash functions

+0

鏈接導致禁止URL – KyrSt 2017-10-30 21:38:58

+0

@KyrSt請參閱https://stackoverflow.com/questions/14409466/simple-hash-functions – 2017-10-30 21:44:47

+0

謝謝,我只是想指出。 – KyrSt 2017-10-30 21:48:25

0

您的所有問題的回答here

想法:使用避免衝突的散列函數將它們用作索引。

1

glibc提供了hcreate,hsearch和hdestroy。

0

散列表很好。如果您想堅持使用標準的C庫函數,那麼也可以使用bsearch,它適用於不斷查找字典或動態字典以及qsort