生成6位随机数

2023-11-11

// 随机生成六位不重复的数字
private static int generate6BitInt() {
    int[] arr = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
    // 将数组随机打乱,据算法原理可知:
    // 重复概率 = 1/10 * 1/9 * 1/8 * 1/7 * 1/6 * 1/5 * 1/4 * 1/3 * 1/2 * 1/1 = 1/3628800,
    // 即重复概率为三百多万分之一,满足要求。
    for(int num = 10; num > 1; --num) {
        int idx = StdRandom.uniform(num);
        int temp = arr[idx];
        arr[idx] = arr[num - 1];
        arr[num - 1] = temp;
    }
    // 第一个元素不能为0,否则位数不够
    if(0 == arr[0]) {
        int ndx = StdRandom.uniform(10);
        arr[0] = arr[ndx];
        arr[ndx] = 0;
    }
    // 将数组前六位转化为整数
    int rs = 0;
    for(int idx = 0; idx < 6; ++idx) {
        rs = rs * 10 + arr[idx];
    }
    return rs;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

生成6位随机数 的相关文章

  • 一步一步在docker中构建CI流程

    docker是什么 引用百度百科的介绍 Docker 是一个开源的应用容器引擎 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中 然后发布到任何流行的 Linux 机器上 也可以实现虚拟化 容器是完全使用沙箱机制 相互之间不会有任何
  • python web开发之WSGI/uwsgi/uWSGI详解

    1 三者的定义 WSGI是一种通信协议 uwsgi是一种传输协议 uWSGI是实现了uwsgi和WSGI两种协议的Web服务器 2 三者的使用场景 WSGI 全称 Web Server Gateway Interface 是为 Python
  • jvm内存使用率linux,linux 查看Java内存使用情况

    linux 查看Java内存使用情况 命令如下 top b n 1 grep java awk print PID 1 mem 6 CPU percent 9 mem percent 10 查看java进程信息 ps ef grep jav
  • shardingsphere搭建使用,以及报错解决(一)

    ShradingJdbc的搭建注意事項 目前使用的Springboot的版本是 2 2 5 使用的shardingsphere的版本是 5 1 0 1 注意ShangrdingSphere的版本之间差异比较大 如果有问题的话尝试使用不同的版
  • double和float的精度和取值范围

    1 取值范围 float和double的范围是由指数的位数来决定的 float的指数位有8位 而double的指数位有11位 分布如下 float 1bit 符号位 8bits 指数位 23bits 尾数位 double 1bit 符号位
  • 第5课 微信小程序常用尺寸单位rpx说明:

    第5课 微信小程序尺寸单位rpx说明 rpx单位 width 750rpx 定义所有手机屏幕宽度都为750rpx px单位 height 750px px单位最好只用于高度 如果定义宽度 手机屏幕不同显示效果也会不同 vw单位 width
  • free java movies_Java Programming: Build a Recommendation System

    Ever wonder how Netflix decides what movies to recommend for you Or how Amazon recommends books We can get a feel for ho
  • 按课程总成绩从高到低排序输出各个学生的信息

    按课程总成绩从高到低排序输出各个学生的信息 20分 题目内容 设计一个结构体类型 包含姓名 学号 语文成绩 数学成绩 英语成绩 输入n个学生的信息 输出按三门课程总成绩从高到低排序的各个学生的姓名 学号和各科成绩 输入格式 首先第1行输入一
  • 数学建模——Matlab画散点图

    scatter x linspace 0 3 pi 200 y cos x rand 1 200 scatter x y plot x linspace 0 3 pi 200 y cos x rand 1 200 plot x y o
  • 树莓派Debian安装Node.js,centOS服务器安装简介

    树莓派的架构 uname a 树莓派4B是基于armv7架构 下载 wget https nodejs org dist v12 16 1 node v12 16 1 linux armv7l tar xz tar xf node v12
  • okhttp之 header详解

    Http 的请求 和 应答包括 header部分 和body部分 以下对header部分进行详解 仅供参考 Request的header注释 Header 注释 示例 Accept 指定客户端能够接收的内容类型 Accept text pl
  • 【6】Docker中部署Nginx

    1 拉取 Nginx 镜像 docker pull nginx latest 就是最新版本的 nginx 版本 2 创建 守护方式的 Nginx 容器 docker run di name nginx p 80 80 nginx 在第5篇
  • Typora设置标题自动添加序号

    Typora设置标题自动添加序号 文件 偏好设置 打开主题文件夹 设置css样式 创建文件base user css initialize css counter write counter reset h1 h1 counter rese
  • HW溯源反制

    windows 跳板服务器溯源 windows security日志 rdp 日志 里面能够拿到security或者rdp日志的ip信息 假如对方跳板是win 的话 顺藤摸瓜可以拿到对方真实连跳板的ip 然后需要注意的是 假如对方用的是随机
  • Tomcat优化集群

    1 分配给Tomcat足够大的内存空间 压解版本中 文件位置 bin catalina bat 这里增加了 set JAVA OPTS Xms1024m Xmx1024m XX PermSize 128M XX MaxPermSize 25
  • 2023通信工程专业毕业设计题目选题推荐

    文章目录 1前言 2 如何选题 2 1 移动通信方向 2 2 嵌入式开发方向 2 3 人工智能方向 2 4 物联网方向 2 5 算法研究方向 2 6 移动应用开发方向 2 7 网络通信方向 2 8 学长作品展示 4 最后 1前言 近期不少学
  • 技术至简-2:分集与交织

    分集 先开分后集合 空间 把数据分到不同的空间进行传输 频率 把数据分到不同的载频进行传输 时间 把数据分到不同的时隙进行传输 交织 分与合数据的方法 按比特的位置连续 分组 按比特的位置间隔 交织
  • Java常用包9

    下面列出了Java常用包 可以查找该包下面的常用类 可以查看该类的常用方法使用源码 模块 项目数 1 rx functions 有 21 个常用类 2 org springframework beans factory config 有 3
  • 20060217: 联合国的人权报告毫无根据?

    那你美国的人权报告就有根据了 环球时报 引用的不是 中韩观点 而是事实 转载于 https www cnblogs com yidinghe archive 2006 02 17 332220 html
  • 前端 h5实现自带浏览器支付功能

    前端需要做的 这里使用vue 中的 mixin 第一步获取订单号 调用后端的接口获取订单号 第二步 调用后端的接口 后端给返回一个url地址 然后打开这个地址 这个地址是调用微信支付的地址 打开即调用 这里使用decodeURICompon

随机推荐

  • Nginx配置origin限制跨域请求

    Nginx需要修复一个安全漏洞 这个需要根据客户端传递的请求头中的Origin值 进行安全的跨站策略配置 目的是对非法的origin直接返回403错误页面 配置如下 1 在http中定义一个通过map指令 定义跨域规则并返回是否合法 htt
  • SQL中的替换函数replace()使用

    语法REPLACE string expression string pattern string replacement 参数string expression 要搜索的字符串表达式 string expression 可以是字符或二进制
  • 【大数据分析与挖掘】挖掘建模之关联分析

    文章目录 一 关联规则 1 1 常用的关联规则算法 1 2 Apriori算法介绍 1 2 1 关联规则与频繁项集 1 2 2 Apriori算法的思想与性质 1 2 3 Apriori算法的实现的两个过程 1 2 4 Apriori算法的
  • PicGo+阿里云Oss图床

    首先说一下我为什么使用阿里云 我之前是用gitee做图床 后面被限制了 图片也访问不了 阿里云这个5块钱可以用半年 还是很便宜的 主要不会突然见不能用 文章目录 PicGo下载 阿里云Oss图床的配置 PicGo下载 PicGo2 3 0
  • Linux:查看进程+杀死进程

    查看进程 ps 查看所有进程状态 ps aux 参数 a 显示所有进程 包括其他用户的进程 u 用户以及其他详细信息 x 显示没有控制终端的进程 查看本用户的进程及其状态 ps u 状态 1 R 运行 表示进程正在运行或在允许队列中等待 2
  • Leetcode 704 二分查找

    Leetcode 704 二分查找 题目描述 给定一个 n 个元素有序的 升序 整型数组 nums 和一个目标值 target 写一个函数搜索 nums 中的 target 如果目标值存在返回下标 否则返回 1 示例1 输入 nums 1
  • Pr零基础入门指南笔记二-----------(粗剪、精剪、导出视频)

    目录 1 粗 精剪辑步骤 2 粗剪详细步骤 1 预览和挑选素材 2 调整素材顺序 3 精确修建素材 4 添加背景音乐 3 导出视频 干货 PR零基础入门指南第三集 10分钟学会PR基本剪辑 剪辑步骤 快捷操作大分享 哔哩哔哩 bilibil
  • 版本发布规范

    版本发布命名规范 版本命名规范 软件版本号有四部分组成 第一部分为主版本号 第二部分为次版本号 第三部分为修订版本号 第四部分为日期版本号加希腊字母版本号 希腊字母版本号共有五种 分别为base alpha beta RC release
  • Unity Shader初学——《Unity Shader入门摘要》

    由于项目需要加上本人兴趣 所以开始学习shader相关知识 主要参考冯乐乐的 Unity Shader入门摘要 作者的博客在此 https blog csdn net candycat1992 作者的个人网站 http candycat19
  • 【论文笔记】ICNet:用于无监督医学图像配准的逆一致性模型

    本文是文章 Inverse Consistent Deep Networks for Unsupervised Deformable Image Registration 的阅读笔记 过去基于学习的配准方法忽略了图像之间转换的逆一致性 并且
  • 计算机系统实验六:程序的链接

    参考教材 计算机系统基础 第二版 袁春风 机械工业出版社 参考慕课 计算机系统基础 四 编程与调试实践 https www icourse163 org learn NJU 1449521162 计算机系统实验导航 实验一 环境安装 htt
  • 2 ELK收集nginx的json格式日志

    为了便于利用 ELK日志平台收集展示 Nginx 的日志 可以将 Nginx 的日志改成 json 的格式 https www jianshu com p b6ba259777e7 1 修改nginx配置文件 root db01 vim e
  • TCP/IP(TCP传输控制协议)

    1 基本知识 TCP 协议的作用是 保证数据通信的完整性和可靠性 防止丢包 可靠地协议 面向连接的协议 TCP和UDP在传输层 TCP 是以太网协议和 IP 协议的上层协议 也是应用层协议的下层协议 以太网协议解决了局域网的点对点通信 IP
  • Internet Explorer 无法打开Internet站点 http://xxxxx 已终止操作

    在开发中也遇到这个情况 原因可能是因为程中 在IE下 当页面还没有加载完全时 如果正在执行的JS代码中含有使用了 document createElement的话 很容易引起页面加载失败 导致提示 internet explore 无法打开
  • Linux操作系统之线程创建

    文章目录 一 了解线程 二 线程的创建 一 了解线程 什么是线程 线程是进程内部的一条执行路径或执行序列 二 线程的创建 pthread creat 创建线程 pthread exit 只退出当前线程 pthread join 等待线程结束
  • matlab绘制奈奎图,matlab画奈奎斯特图

    基于matlab 的时域奈奎斯特定理验证课题名称 利用 matlab 检验采样定理 学院 计通学院 专业班级 通信 1402 2016 年 6 月 设计目的 1 掌握 matlab 的一些应用 奈奎斯特图和波特图解释 物理 自然科学 专业资
  • java-springboot、mybatis、redis相关面试题

    SpringBoot部分 相比Spring Spring Boot有哪些优点 Springboot是一个基于spring的框架 对spring做了大量简化 使开发流程更快 更高效 它大量简化maven依赖 管理了大量的基础依赖 基于注解配置
  • ovirt-engine平台vm rest-api新增接口字段

    背景 基于ovirt engine二次开发 为实现软删除功能 对现有的vm接口进行扩展字段 增加判断软删除字段以及软删除的时间字段 1 首先要再ovirt engine api model工程中 找到对应的资源类型 添加你需要的字段 typ
  • Similarity-Preserving Knowledge Distillation(2019ICCV)----论文阅读笔记

    Similarity Preserving Knowledge Distillation Abstract 1 Introduction 贡献 2 Method 3 Experiments 3 1 CIFAR 10 3 2 Transfer
  • 生成6位随机数

    随机生成六位不重复的数字 private static int generate6BitInt int arr 0 1 2 3 4 5 6 7 8 9 将数组随机打乱 据算法原理可知 重复概率 1 10 1 9 1 8 1 7 1 6 1