下記のようにしてコンパイルは通ったのですが、同じ値を入れても成功がcoutされます。ハッシュ関数道理の連結リストに値がちゃんと入っているのか知りたいです。
メンバは以下の3つです。 list<int>* table; int table_size; int ndata;
ハッシュ関数はkey % table_sizeです。
コード:
bool HashSeparate::Insert( int key ){
list<int> l = table[key % table_size];
list<int>::iterator itr = find(l.begin(), l.end(), key);
if(itr != l.end()){
cout << "失敗" << endl;
return false;
}
else{
l.push_front(key);
ndata++;
cout << "成功" << endl;
return true;
}