产生不重复的随机数
来源:互联网 发布:理发店记账软件 编辑:程序博客网 时间:2024/04/29 04:40
声明: 仅个人小记
效果展示
连续运行三次的结果
代码部分
#include <stdio.h>#include <stdlib.h>#include <time.h>#define N 100/* 功能: 产生不重复的随机数 输入: a[] 一维数组, length 指定数组a的长度 输出: a 中为0~length的所有值随机乱序存放 思想: 本来是按序放置的0~length数表,我们随出一个随机数作为交换次数,对该数表中数据进行交换 */void nonredundantRandomNumber(int a[], int length) // 不重复的随机数 { int i, k, t, times; for (i = 0; i < length; ++ i) a[i] = i; times = rand()%length; // 这个随机值指定交换次数 for (i = 0; i < times; i ++) { k = rand()%length; t = a[i]; a[i] = a[k]; a[k] = t; } return;}int main(void){ int a[N]; srand(time(NULL)); nonredundantRandomNumber(a,N); // 下面是输出显示结果 for (int i = 0; i < N; ++ i) { printf("%2d ",a[i]); if ((i+1)%10 == 0) printf("\n"); } return 0;}
阅读全文
0 0
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复的随机数
- 产生不重复随机数
- 产生不重复随机数
- 产生不重复随机数
- 产生随机数(不重复)
- 产生不重复随机数的简便算法
- 一个产生不重复随机数的算法
- 怎样产生不重复的随机数,密码
- 产生不重复的10个随机数
- 媒体查询的使用
- 第四周项目3(2)——单链表的应用
- 区块链开发教程搭建Hyperledger的虚拟币开发环境
- 第四周项目三(2) 两个链表的连接
- Spring Cloud Config配置文件加解密
- 产生不重复的随机数
- UML类图与类的关系详解
- sublime text3 快捷键大全
- 《ReactNative》之图片上传
- mybatis源码中的设计模式解读
- JavaScript(十)操作表单
- 10.事件选择器:DataPick和TimePick的应用实例:获取选择的时间
- caffe对船的分类过程
- 如何将linux服务器上的项目拉到本地