您的位置:首页 > 编程语言 > C语言/C++

random_shuffle()打乱顺序

2017-02-28 14:53 274 查看
random()的两个缺点:

做格式化时,结果常常是扭曲的,所以得不到正确的随机数(如某些数的出现频率要高于其它数);

random()只支持整型数;不能用它来产生随机字符,浮点数,字符串或数据库中的记录。

random_shuffle()用来打乱元素排列顺序,random_shuffle()有两个参数,第一个参数是指向序列首元素的迭代器,第二个参数则指向序列最后一个元素的下一个位置。下列代码段用random_shuffle()算法打乱了先前填充到向量中的元素:

random_shuffle(legal.begin(), legal.end());
所有STL算法不仅适用于容器,也适用于序列。因此,你也能将random_shuffle()算法应用于内置数组。只是要注意random_shuffle()的第二个参数要指向数组上界的下一个元素位置:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  stl random c++