【问题标题】:how get a random element boost unordered_map?如何获得随机元素提升 unordered_map?
【发布时间】:2017-02-27 02:19:40
【问题描述】:

我使用 typedef boost::unordered_map。如何获取随机元素 v: c++ 03

代码:

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

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

【问题讨论】:

  • 生成随机key得到随机值。使用迭代器随机迭代多次

标签: c++ boost unordered-map unordered


【解决方案1】:

您将找不到有效的方法(错误的数据结构)。

但你总是可以:

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

my_random 的实现方式类似于 rand()%n(不好)或使用 std::uniform_int_distribution&lt;size_t&gt;(更好)。

【讨论】:

  • 自动 ?我使用 C++ 03
  • 所以?用正确的类型替换它。我没有看到问题。我正在回答这个问题,我不需要教 C++ 或为我认为的未知规范编写完整的解决方案。
  • 问题是如何.. on 03
猜你喜欢
  • 2015-01-17
  • 2019-09-21
  • 1970-01-01
  • 2015-09-05
  • 2018-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多