有一点不好的是,randNum的取值会影响随机次序,如果randNum定了的话,无论程序运行多少遍,次序都不会变。

#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;int main()
{vector<string> vs;string name[] = {"徐晓寒", "韩青", "杨惠", "王忠超", "申子欣", "张茵", "叶白璐", "王斌", "章莹婷"};int nameSize = sizeof(name) / sizeof(string);for(int i = 0; i < nameSize; i++){vs.push_back(name[i]);}int vsSize = vs.size();int randNum = 200;for(int i = 0; i < randNum; i++){random_shuffle(vs.begin(), vs.end());}for (int i = 0; i < vsSize; i++){cout << "第 " << i + 1 << " 位   " << vs[i] << endl;}return 0;
}

因为以上代码固定randNum的取值,每次运行,打乱的次序不变,不过添加一行srand(unsigned(time(NULL)));
就能使得打乱次序改变了。

#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;int main()
{srand(unsigned(time(NULL)));vector<string> vs;string name[] = {"徐晓寒", "韩青", "杨惠", "王忠超", "申子欣", "张茵", "叶白璐", "王斌", "章莹婷"};int nameSize = sizeof(name) / sizeof(string);for(int i = 0; i < nameSize; i++){vs.push_back(name[i]);}int vsSize = vs.size();int randNum = 200;for(int i = 0; i < randNum; i++){random_shuffle(vs.begin(), vs.end());}for (int i = 0; i < vsSize; i++){cout << "第 " << i + 1 << " 位   " << vs[i] << endl;}return 0;
}

C++用random_shuffle打乱字符串数组顺序相关推荐

  1. 用C++的random_shuffle()函数打乱int数组顺序

    程序背景: 开组会,汇报人已确定,出一个随机的汇报顺序. #include<bits/stdc++.h> using namespace std;const int NUM = 12;// ...

  2. php 将字符串打乱,PHP内部实现打乱字符串顺序函数str_shuffle的方法

    前言 2019年春节已过,今天是上班第一天,还得翻一翻之前没有看完的PHP源码. 今天聊的是字符串顺序打乱函数str_shuffle.这个函数本身使用频率并不高.但是,其内部实现还是非常有趣的. st ...

  3. 【Matlab】定义顺序增加的字符串数组(A1,A2 ... An)并写到Excel的第一行

    1.Introduction 话说在很久很久以前,有一位魔法师,找到了一种快速生成顺序数组的方法.没有错,就是在下,哈哈哈.但是如果想生成A1,A2 - A9这样带字符串的顺序增加数组,并且写进Exc ...

  4. python数组随机打乱_对Python random模块打乱数组顺序的实例讲解

    在我们使用一些数据的过程中,我们想要打乱数组内数据的顺序但不改变数据本身,可以通过改变索引值来实现,也就是将索引值重新随机排列,然后生成新的数组.功能主要由python中random模块的sample ...

  5. php 打乱数组顺序_PHP实现大转盘抽奖算法

    php中文网最新课程 每日17点准时技术干货分享 本文通过具体的实例向大家介绍了PHP语言实现大转盘抽奖算法,希望对大家学习PHP抽奖有所帮助. 流程: 1.拼装奖项数组: 2.计算概率: 3.返回中 ...

  6. php 如何打乱数组顺序,【PHP打乱数组顺序的方法有哪些,这样的程序你真的会写吗】- 环球网校...

    [摘要]PHP作为一种超文本预处理器,已经成为了我们常用的网站编程语言,并且结合了C语言,Java等我们常见的编程语言,所以,有很多web开发领域的新人都看中了他的使用广泛性,有很多人都想了解php的 ...

  7. Python 轻松解决从 K 个字符串数组中任意取一个字符串,按顺序拼接,列出所有可能的字符串组合。(对比用库和不用库的方法)

    文章目录 一.问题说明 二.解决方法 一.问题说明 问题来源:粉丝的提问 从 K 个字符串数组中任意取一个字符串,按顺序拼接,列出所有可能的字符串组合(对比用库和不用库的方法) 二.解决方法 iter ...

  8. python 打乱数组顺序,Python打乱二维数组顺序:个人使用经历

    目录 我的需求背景: 发现问题: 解决方式: 我的需求背景: 两个分类标签的数据独立成组,使用np.vstack拼接到一起后,希望打乱行的顺序. #合并SD和USD标签的数据 finalData = ...

  9. php打乱数组顺序(含二维数组)

    php打乱数组顺序(含二维数组) 最近在做一个考试小程序的Api接口,其中一个是需要将试题列表打乱顺序,都知道,从数据库搜索出来的列表通常为数组的形式,所以我面临的问题就变成了 如何打乱数组顺序. 随 ...

最新文章

  1. 2022-2028年中国防臭袜行业投资分析及前景预测报告
  2. Spring - Java/J2EE Application Framework 应用框架 第 17 章 使用Spring邮件抽象层发送Email
  3. 前端性能分析工具利器
  4. 微架构设计:微博计数器的设计
  5. rtthread 串口dma接收_RT-Thread 串口DMA使用笔记--STM32F207
  6. 学php5还是php7,学习猿地-php5.*与php7.* 区别
  7. 解决Jenkins打不开浏览器问题
  8. 搜索互联网缓存页面 How to View the Cached Page of any URL or Website
  9. c 语言输入n个数求和,c++---天梯赛---N个数求和
  10. 生成不同数据类型的随机数
  11. 防爆知识:危险场所划
  12. 华为服务器系统启动项,服务器设置开机启动项
  13. pyecharts在jupyter notebook中使用报错
  14. OpenGL第三方库:glad初始了解与下载
  15. android x86 精简版,===Windows7 SP1原版超纯精简版X64X86===
  16. 华为Esight安装包
  17. Win10双系统安装教程(适用所有计算机)
  18. ggplot2设置坐标轴范围_6.6 坐标轴:设置坐标轴上刻度的显示位置
  19. Google算法更新记录-你想了解的全在这
  20. click me? no

热门文章

  1. 企业如何搭建营销部门的大数据天文望远镜
  2. 算法的数值稳定性实验报告用c语言,数值计算实验教案.doc
  3. OpenWrt之配置无线中继(基于新三mt7621)
  4. C语言-arc画一弧线功能
  5. Android 笔记 ImageView 显示大图遇到的问题 以及 无损显示大图 的解决方案
  6. 用友U8其中一个账套提示演示期已到期-修复方法
  7. Dialogue System for Unity文档中英对照版(简雨原创翻译)第四篇(关于主流ui插件拓展相关)
  8. 极力推荐自由飞鸽的电子书《linux 0.11内核详解》,我传至纳米盘,也可到oldlinux.org 去下载
  9. 国内云存储厂商酷盘宣布获2000万美元B轮投资
  10. 结束计算机进程的快捷键,结束进程快捷键在哪 电脑结束进程快捷键操作方法...