2017-02-27 5 views
0

私はtypedef boost :: unordered_mapを使用しています。 ++ 03どのようにランダムな要素boost unordered_mapを得る?

コード:C:ランダム要素 Vを取得する方法を

member_1.insert(std::make_pair(gg, M2_NEW CGGList(gg))); 

    typedef boost::unordered_map<CGG, CGGList*> Map1; 
    Map1 member_1; 
+0

乱数を生成するランダムキーを生成します。ランダムに何回か反復するイテレータを使用します。 –

答えて

0

あなたは効率的な方法(間違ったデータ構造)を見つけることができません。

しかし、あなたのことができ、常に:my_randomはrand()%nのように実装されるだろう

auto random_it = std::next(member1.begin(), my_random(member2.size())); 

(はるか)(悪い)またはstd::uniform_int_distribution<size_t>を使用。

+0

auto?私はC++を使用して03 –

+0

だから?適切なタイプに交換してください。私は問題を見ない。私はその質問に答えていました。私はC++を教えることや、未知の仕様に完全な解決策を書く必要はありません。 – sehe

+0

質問はいかがですか03 –

関連する問題