2

Visual C ++はどのように機能しstdext::hash_set<T>::upper_bound()ますか?
ハッシュテーブルはどのようにして要素をソートし続けることができますか?!

ソースコードを読み込もうとしましたが、STLコードを解読するのは難しいです...そして概念的にも、それを理解することはできません。ハッシュテーブルで要素を比較するにはどうすればよいでしょうか。

4

2 に答える 2

2

さまざまなunordered_xxxテンプレートは、ハッシュ関数を使用してオブジェクトをバケットに分類します。同じバケットに入るオブジェクトは、比較が等しいオブジェクトが隣接するようにグループ化されます (「比較が等しい」とは、「a < b偽でb < aあり偽である、または述語バージョンの場合、偽であり偽であるpr(a,b)」ことを意味しpr(b,a)ます)。lower_bound()渡された値に一致する最初のオブジェクトを指す反復子を返します。upper_bound()渡された値に一致する最後のオブジェクトの 1 つ後ろの反復子を返します。関連するグローバルな並べ替えはありません。

于 2013-01-04T14:25:01.027 に答える