Fisher-Yates乱序算法

乱序算法

public class Test07 {
	public static void main(String[] args) {
		//乱序算法
		int[] arr = {1,2,3,4,5,6,7,8};
		//逆序遍历 且这个随机的下标不能使要交换的元素的本身
		for(int i = arr.length-1;i>0;i--){
			//产生一个随机的下标与当前元素进行交换
			int index = (int)(Math.random()*i);
			arr[i] = arr[i] ^ arr[index];
			arr[index] = arr[i] ^ arr[index];
			arr[i] = arr[i] ^ arr[index];
		}
		System.out.println(Arrays.toString(arr));
	}
}

结果(随机):

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/395206.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python Flask Web + PyQt 前后端分离的项目—学习成绩可视化分析系统

简介 使用工具: Python,PyQt ,Flask ,MySQL 注:制作重点在网页端,因此网页端的功能更全 WEB界面展示: 系统登录分为管理员,老师,学生3部分 管理员统一管理所有的账号信息以及登录…

Java实现一个栈

目录 概念与结构 实现一个栈 创建一个栈类 实现栈的基本操作 测试栈类 概念与结构 概念与结构 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元…

算法练习-分割等和子集(思路+流程图+代码)

难度参考 难度:困难 分类:动态规划 难度与分类由我所参与的培训课程提供,但需 要注意的是,难度与分类仅供参考。且所在课程未提供测试平台,故实现代码主要为自行测试的那种,以下内容均为个人笔记&#xff0…

[AIGC] 深入理解 Java 虚拟机(JVM)的垃圾回收

深入理解 Java 虚拟机(JVM)的垃圾回收 一、是什么 Java 虚拟机(JVM)的垃圾回收(Garbage Collection)是一种自动内存管理机制,用于释放不再使用的对象所占用的内存空间。垃圾回收的目标是回收那…

【HTML】SVG实现炫酷的描边动画

前沿 今天闲来无事,看到Antfu大佬的个性签名,觉得还是非常炫酷的,于是也想要搞一个自己的个性签名用来装饰自己的门面,不过由于手写的签名太丑了,遂放弃。于是尝试理解原理,深入研究此等密法,终…

如何录制视频?让你的录制过程更加顺畅!

录制视频是现代社会不可或缺的技能之一,无论是工作还是生活,我们都需要学会如何录制和编辑视频,可是您知道如何录制视频吗?本文将介绍两种录制视频的方法,这两种方法各有特点,可以满足不同用户的需求。 如何…

Windows制作Ubuntu的U盘启动盘

概要: 本篇演示在Windows10中制作Ubuntu22.04的U盘启动盘 一、下载Ubuntu22.04的iso文件 在浏览器中输入https://ubuntu.com去Ubuntu官网下载Ubuntu22.04的iso文件 二、下载Ultraiso 在浏览器中输入https://www.ultraiso.com进入ultraiso官网 点击FREE TRIAL&a…

腾讯云4核8G12M服务器支持多少人在线?

4核8G服务器支持多少人同时在线访问?阿腾云的4核8G服务器可以支持20个访客同时访问,关于4核8G服务器承载量并发数qps计算测评,云服务器上运行程序效率不同支持人数在线人数不同,公网带宽也是影响4核8G服务器并发数的一大因素&…

最高频率的图形工作站应用配置推荐

如果你的计算机速度太慢,想买一台最快的图形工作站,大幅提高你的工作效率,从专业角度,这种图形工作站不是唯一的,原因是,不同的应用、不同的算法、不同计算规模,硬件配置有很大差异,…

书生开源大模型-第2讲-笔记

1.环境准备 1.1环境 先克隆我们的环境 bash /root/share/install_conda_env_internlm_base.sh internlm-demo1.2 模型参数 下载或者复制下来,开发机中已经有一份参数了 mkdir -p /root/model/Shanghai_AI_Laboratory cp -r /root/share/temp/model_repos/inter…

大数据信用风险检测,多久查一次比较好?

自从大数据技术的出现,就被广泛的运用到金融风控行业,逐渐成为不少银行和机构进行贷前风险排查的重要工具,大数据信用的重要性也日益的显现出来,那大数据信用风险检测,多久查一次比较好呢?本文为你详细讲讲。 大数据信…

[AudioRecorder]iPhone苹果通话录音汉化破解版-使用巨魔安装-ios17绕道目前还不支持

首先你必须有巨魔才能使用!! 不会安装的,还没安装的移步这里,ios17 以上目前装不了,别看了:永久签名 | 网址分类目录 | 路灯iOS导航-苹果签名实用知识网址导航-各种iOS技巧-后厂村路灯 视频教程 【Audio…

森林消防利器:智能高压森林应急消防泵

在森林火灾防控工作中,智能高压森林应急消防泵发挥着至关重要的作用。它是一种由高强度耐腐蚀材料加工制造而成的消防泵,具有体积小、重量轻、压力大、扬程高、流量大、输水距离远等优点,运行可靠,能够迅速扑灭森林火灾&#xff0…

SG-9101CB(可编程+105℃晶体振荡器)

SG-9101CB 系列是一款高精度可编程性的晶体振荡器,能够在0.67 MHz至170 MHz的频率范围内以1ppm的步长精确调整频率。这款振荡器支持宽范围的电源电压(1.62 V至3.63V),并提供使能(OE)或待机(ST&a…

Java学习第十七节之封装

封装 package oop.demo04;//类 private:私有 public class Student {//属性私有private String name;//名字private int id;//学号private char sex;//性别private int age;//年龄//提供一些可以操作这个属性的方法!//提供一些 public 的 get,set 方法…

如何使用Net2FTP部署本地Web网站并实现远程文件共享

文章目录 1.前言2. Net2FTP网站搭建2.1. Net2FTP下载和安装2.2. Net2FTP网页测试 3. cpolar内网穿透3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1.前言 文件传输可以说是互联网最主要的应用之一,特别是智能设备的大面积使用,无论是个人…

做temu跨境电商,必读这五大秘诀!

随着互联网的飞速发展,电商行业呈现出前所未有的繁荣景象。新兴电商平台Temu成为了众多创业者的关注焦点。本文将为您解析如何在Temu电商蓝海项目中,从自身能力建设、了解市场环境到做好定位等方面,找到属于您的成功之路。 一、自身能力建设 …

【QCA6174】SDX12+QCA6174驱动屏蔽120/124/128信道修改方案

SDX12基线版本 SDX12.LE.1.0-00215-NBOOT.NEFS.PROD-1.39743.1 问题描述 对于欧洲国家来说,默认支持DFS信道,但是有三个信道比较特殊,是天气雷达信道,如下图所示120、124、128,天气雷达信道有个特点就是在信号可以发射之前需要检测静默15min,如果信道自动选择到了天气雷达…

原创!顶级SCI优化!一键实现ICEEMDAN-NRBO-BiLSTM-Attention多变量时间序列预测!以光伏数据集为例

声明:文章是从本人公众号中复制而来,因此,想最新最快了解各类智能优化算法及其改进的朋友,可关注我的公众号:强盛机器学习,不定期会有很多免费代码分享~ 目录 数据介绍 模型流程 创新点 结果展示 完整…

C++ STL详解:set

目录 一、简介 1.1键值对 1.2树形结构的关联式容器 二、set 2.1set简介 2.2set内部常用接口 2.1set的构造函数 2.2set迭代器 2.3判空及增删查改 三、使用例子 一、简介 在前几篇文章中&#xff0c;已经学习了二叉搜索树&#xff0c;二map和set的底层就是<key, va…