hash table(开放寻址法-二次探查实现的哈希表)
生活随笔
收集整理的這篇文章主要介紹了
hash table(开放寻址法-二次探查实现的哈希表)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
hash table(開放尋址法-二次探查實現的哈希表)
#ifndef C11LEARN_HASHQUADRATIC_H #define C11LEARN_HASHQUADRATIC_H #include "HashLiner.h" template<typename T> class HashQuadratic:public HashLiner<T> { public:HashQuadratic(int c1 = 1,int c2 = 2); protected:int c1;int c2; protected:virtual int hashing(int key,int index); }; template<typename T> HashQuadratic<T>::HashQuadratic(int c1, int c2):HashLiner<T>(),c1(c1),c2(c2) {} template<typename T> int HashQuadratic<T>::hashing(int key,int index){return (HashQuadratic<T>::auxiliary_hashing(key)+c1*index+c2*index*index)%HashLiner<T>::capacity; } #endif //C11LEARN_HASHQUADRATIC_H測試代碼
HashQuadratic<string> hashQuadratic;hashQuadratic[2] = "hello";hashQuadratic[123456] = "world";cout << hashQuadratic[2] << endl;cout << hashQuadratic[123456] << endl;HashQuadratic<string> hashQuadratic1 = hashQuadratic;cout << hashQuadratic1[2] << endl;cout << hashQuadratic1[123456] << endl;HashQuadratic<string> hashQuadratic2;hashQuadratic2 = hashQuadratic;cout << hashQuadratic2[2] << endl;cout << hashQuadratic2[123456] << endl;輔助類
HashLiner鏈接地址
總結
以上是生活随笔為你收集整理的hash table(开放寻址法-二次探查实现的哈希表)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hash table(开放寻址法-线性探
- 下一篇: hash table(开放寻址法-双重散