ShuffleElements(随机打乱数组中的元素)
给定一个数组,随机打乱数组中的元素,题意很简单直接上代码:
package Array;
import java.util.Arrays;
import java.util.Collections;
import java.util.Random;
public class ShuffleElements { public static void main(String[] args) {
int [] array = {1,2,3,4,5};
//随机打乱数组中的元素
//int [] result = randomizeArray(1,10);
shuffle();
//打印数组中的元素
//print(result);
} /**
* 打印数组中的元素
* @param result
*/
private static void print(int[] result) {
if (result != null && result.length>0) {
for (int i = 0;i<result.length;i++) {
System.out.print(result[i]+" ");
}
System.out.println();
} } /**
* 随机打乱数组中的数字
* @param array
* @return
*/
public static int[] randomizeArray(int [] array){
Random gen = new Random();
for (int i=0;i<array.length;i++) {
int randomPosition = gen.nextInt(array.length);//生成0-array.length区间的随机数
int temp = array[i];
array[i] = array[randomPosition];
array[randomPosition] = temp;
} return array; } /**
* 随机打乱a-b区间的数据
* @param a
* @param b
* @return
*/
public static int[] randomizeArray(int a,int b){
Random rgen = new Random(); int size = b-a+1;//数组的大小
int [] array = new int[size];
for (int i = a;i<size;i++) {
array[i] = a+i;
}
for (int i=0;i<array.length;i++) {
int randomPosition = rgen.nextInt(array.length);//生成0-array.length区间的随机数
int temp = array[i];
array[i] = array[randomPosition];
array[randomPosition] = temp;
} print(array);
return array;
} //jdk中的shuffle方法
public static void shuffle(){
int[] array = new int[]{1,2,3,4,5};
Collections.shuffle(Arrays.asList(array));
print(array);
} }
ShuffleElements(随机打乱数组中的元素)的更多相关文章
- 面试题-->写一个函数,返回一个数组中所有元素被第一个元素除的结果
package com.rui.test; import java.util.Random; /** * @author poseidon * @version 1.0 * @date:2015年10 ...
- 087-把PHP数组中的元素按随机顺序重新排列shuffle
<?php $arr=array(3,23,'A','f','123','hello'); //定义一个数组 echo '排序之前的数组信息:<br>'; print_r($arr) ...
- LeetCode - 统计数组中的元素
1. 统计数组中元素总结 1.1 统计元素出现的次数 为了统计元素出现的次数,我们肯定需要一个map来记录每个数组以及对应数字出现的频次.这里map的选择比较有讲究: 如果数据的范围有限制,如:只有小 ...
- php 去除数组中重复元素
去除数组中重复元素, 找了下可以一下两个函数 php array_flip()与array_uniqure() $arr = array(…………) ;// 假设有数组包含一万个元素,里面有重复的元素 ...
- 将String类型的二维数组中的元素用FileOutputStream的write方法生成一个文件
将String类型的二维数组中的元素用FileOutputStream的write方法生成一个文件import java.io.File;import java.io.FileOutputStre ...
- 功能要求:定义一个两行三列的二维数组 names 并赋值,使用二重循环输出二维数组中的元素。
功能要求:定义一个两行三列的二维数组 names 并赋值,使用二重循环输出二维数组中的元素 names={{"tom","jack","mike&qu ...
- 【LeetCode每天一题】Find First and Last Position of Element in Sorted Array(找到排序数组中指定元素的开始和结束下标)
Given an array of integers nums sorted in ascending order, find the starting and ending position of ...
- 数组中的元素 增加push用法 unshift() 方法 和减少pop() 方法 shift() 和其他位置增删 splice() 方法 join() 方法 reverse() 方法 sort() 方法
push用法 push 英 [pʊʃ] 美 [pʊʃ] vt. 推,推动; vt. 按; 推动,增加; 对…施加压力,逼迫; 说服; n. 推,决心; 大规模攻势; 矢志的追求 定义和用法 push( ...
- js向一个数组中插入元素的几个方法-性能比较
向一个数组中插入元素是平时很常见的一件事情.你可以使用push在数组尾部插入元素,可以用unshift在数组头部插入元素,也可以用splice在数组中间插入元素. 但是这些已知的方法,并不意味着没有更 ...
随机推荐
- Python 2.7.6 安装lxml模块[ubuntu14.04 LTS]
lxml --->首字母是字母l,不是数字1 lxml 2.x : https://pypi.python.org/pypi/lxml/2.3 1xml官网:http://lxml.de/ 一 ...
- sort与asort与ksort区别
sort只依据值从小到大排序,键值不参与排序 asort依据值排序,键值参与排序 ksort依据键值排序,值参与排序 sort只依据值从小到大排序,键值不参与排序. 例 <?php $arr=a ...
- myeclipse2016破解过程
1.安装myeclipse2016 CI 7就不介绍了..只需要注意最后安装完成后取消对号.不要立即运行myeclipse2016. 2.下载破解版工具. 到以下网址下载破解工具:http://dow ...
- Log4net配置之Winform项目
具体方法如下: 一.App.config配置 <?xml version="1.0" encoding="utf-8" ?> <configu ...
- Unity3D笔记十四 力
Unity中力的方式有两种:第一种为普通力,需要设定力的方向与大小:第二种为目标位置力,需要设定目标点的位置,该物体将朝向这个目标位置施加力. 1.案例 添加两个球体和一个立方体,另外还要给两个球体添 ...
- Java秒杀简单设计一:搭建springboot环境
项目参考:慕课网 https://www.imooc.com/learn/587 Java秒杀 开发环境 JDK1.8.Maven.Mysql.Eclipse.SpringBoot2.0.5.myb ...
- Making Promises With
转:Making Promises With http://www.htmlgoodies.com/beyond/javascript/making-promises-with-jquery-defe ...
- STM32下多串口用法
一个项目用到32下的多个串口,一般STM32C8T6型号拥有3个USART,串口的配置都很简单,但是要使用的话就得解决他们之间的矛盾, printf函数到底输出在哪一个串口中? 先看这函数: //重定 ...
- MFC如何获取控件相对于窗口的左边,以及鼠标相对于控件的位置
CRect rect; CWnd *pWnd = GetDlgItem(IDC_STATIC_PIC); pWnd->GetWindowRect(&rect); ScreenToClie ...
- 密码强度demo(弱中强)
<!doctype html> <html> <head> <script src="http://ajax.microsoft.com/ajax/ ...