Iterator Find(const char* key) const { if(!key) return Iterator(0); Hash hash = Hash::Generate(key); Node* node = 0; for(Iterator itr = Begin(); itr != End(); ++itr){ if(itr.GetHash() != hash) continue; node = itr.GetNode(); break; } return Iterator(node); }