文本数据挖掘---课后作业shuffle函数洗牌C++
题目:

代码如下:
#include <iostream> #include <random> #include <algorithm> #include <vector> #include <sstream> int main() { int N, num0, num1, l; std::vector<int>v2;//输入的任意vector,用空格隔开; std::string line; std::getline(std::cin, line); std::istringstream iss(line); for (int d; iss >> d; v2.push_back(d)) {} l = v2.size();//用iss获取vector长度l; std::cin >> N;//输入采样数量N; std::vector<int> v1(5000000, 0); v1.insert(v1.end(), 5000000, 1);//构造容器V1存放500w个1和0; std::vector<int>v; v.insert(v.end(), v1.begin(), v1.end()); v.insert(v.end(), v2.begin(), v2.end());//insert叠加两个vector; std::random_device rd; std::mt19937 rng(rd());//设置随机数种子; std::shuffle(v.begin(), v.end(), rng);//shuffle函数洗牌; v.resize(N);//设置要输出的容器大小; /*std::cout << "after shuffle: \t"; for (int n : v) { std::cout << n << " "; }*///可以用来查看洗牌后的数组; std::cout << std::endl; num0 = count(v.begin(), v.end(), 0);//计数器统计个数; num1 = count(v.begin(), v.end(), 1); std::cout << "数字0出现的个数: \t"; std::cout << num0; std::cout << std::endl; std::cout << "数字1出现的个数: \t"; std::cout << num1; return 0; }
运行结果:
hello my world
本文来自博客园,作者:slowlydance2me,转载请注明原文链接:https://www.cnblogs.com/slowlydance2me/p/16725361.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)