0001 template <typename K, typename V> bool Hashtable<K, V>::put( K k, V v ) { //散列表词条插入 0002 if ( ht[ probe4Hit( k ) ] ) return false; //雷同元素不必重复插入 0003 int r = probe4Free( k ); //为新词条找个空桶(只要装填因子控制得当,必然成功) 0004 ht[ r ] = new Entry<K, V>( k, v ); ++N; //插入 0005 if ( removed->test( r ) ) { removed->clear( r ); --L; } //懒惰删除标记 0006 if ( (N + L)*2 > M ) rehash(); //若装填因子高于50%,重散列 0007 return true; 0008 }