火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 184|回复: 7
打印 上一主题 下一主题

[视窗] 一个数组如何随打乱呢

[复制链接]

22

主题

139

帖子

1563

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1563
跳转到指定楼层
楼主
发表于 2024-4-19 13:52:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
比如 1-5  5个数,如何让他随机 排序呢
回复

使用道具 举报

22

主题

139

帖子

1563

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1563
沙发
 楼主| 发表于 2024-4-19 14:26:04 | 只看该作者
<火山程序 类型 = "通常" 版本 = 1 />
数组.加入成员 (1)
数组.加入成员 (2)
数组.加入成员 (3)
数组.加入成员 (4)
数组.加入成员 (5)
置随机数种子 ()
计次循环 (数组.取成员数 ())
{
    随机序号 = 取随机数 (1, 数组.取成员数 ())
    索引 = 取循环索引 ()
    暂存 = 数组.取成员 (索引)
    数组.置成员值 (索引, 数组.取成员 (随机序号 - 1))
    数组.置成员值 (随机序号 - 1, 暂存)
}
调试输出 (数组)
回复

使用道具 举报

22

主题

139

帖子

1563

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1563
板凳
 楼主| 发表于 2024-4-19 14:26:25 | 只看该作者
已解决,抄易代码的
回复

使用道具 举报

26

主题

1480

帖子

5563

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
5563
地板
发表于 2024-4-19 14:26:48 | 只看该作者
<火山程序 类型 = "通常" 版本 = 1 />

方法 打乱数组 <公开 静态 注释 = "随机地打乱基本类型值数组和文本数组类中所有成员的顺序." 注释 = "注: 随机算法为std::mt19937,成员的每个排列都拥有相同的出现概率." 折叠
        @视窗.外部头文件 = "<random>" @嵌入式方法 = "">
参数 欲操作数组 <注释 = "只支持基本类型值数组类和文本数组类" 注释 = "不支持对象数组类、字节集数组类、对象数组模板类" @匹配类型 = 通用类>
{
    @ [](auto& arr) {
    @     auto begin = arr.GetData();
    @     auto end = begin + arr.GetCount();
    @     std::shuffle(begin, end, std::mt19937{std::random_device{}()});
    @ } (@<欲操作数组>.data())
}

评分

参与人数 1金钱 +5 收起 理由
易入门 + 5

查看全部评分

回复

使用道具 举报

22

主题

139

帖子

1563

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1563
5#
 楼主| 发表于 2024-4-19 14:39:12 | 只看该作者
Xelloss0618 发表于 2024-4-19 14:26
方法 打乱数组
参数 欲操作数组
{

谢谢大佬
回复

使用道具 举报

22

主题

236

帖子

2030

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
2030
6#
发表于 2024-4-19 14:43:51 | 只看该作者
Xelloss0618 发表于 2024-4-19 14:26
方法 打乱数组
参数 欲操作数组
{

可以集成piv里面 期待下个版本
火山学习交流群: 1027649189
回复

使用道具 举报

15

主题

306

帖子

2572

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
2572
7#
发表于 2024-4-19 16:06:10 来自手机 | 只看该作者
这不用抄易语言的也不用嵌入式,直接火山写也很简单
回复

使用道具 举报

15

主题

306

帖子

2572

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
2572
8#
发表于 2024-4-19 16:08:22 来自手机 | 只看该作者
循环 取随机数 交换变量  即可
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-5-2 16:03 , Processed in 0.089663 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表