c++ - 如何从 C++ 中的列表/数组中随机选择一个数字?
问题描述
亲爱的专家,我有一个名为 Dstr 的向量,如果我执行 Dstr.size(),它会给我一个数组。我想从 Dstr/Dstr.size() 中随机选择一个候选人。你能建议我如何在 C++ 中做到这一点吗?
提前致谢 问候
解决方案
要从向量中获取随机元素,您可以使用std::sample
:
decltype(Dstr)::value_type element;
std::sample(Dstr.begin(), Dstr.end(), &element, 1, std::mt19937{std::random_device{}()});
需要 C++17。
推荐阅读
- python - 在 Windows 10 中为 python 代码安装依赖项?
- scala - Akka Streams,将元组项目分开?
- android - 如何从 Retrofit2 调用 OnResponse 返回 Java 对象
- error-handling - 何时调用 RTCDataChannel.onerror?
- android - 可以在 android studio 中自动填充代码语句
- python - Tkinter 中的交互式 PyPlot 图未注册 MouseEvents
- rust - Path::join 不符合预期
- dart - 使用 rootBundle 加载文件
- r - data.frame 中的错误(...,check.names = FALSE)
- xamarin - 如何在 CS 中的网格内获取第一个标签的文本?