给定一个数组,随机打乱数组中的元素,题意很简单直接上代码:

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(随机打乱数组中的元素)的更多相关文章

  1. 面试题-->写一个函数,返回一个数组中所有元素被第一个元素除的结果

    package com.rui.test; import java.util.Random; /** * @author poseidon * @version 1.0 * @date:2015年10 ...

  2. 087-把PHP数组中的元素按随机顺序重新排列shuffle

    <?php $arr=array(3,23,'A','f','123','hello'); //定义一个数组 echo '排序之前的数组信息:<br>'; print_r($arr) ...

  3. LeetCode - 统计数组中的元素

    1. 统计数组中元素总结 1.1 统计元素出现的次数 为了统计元素出现的次数,我们肯定需要一个map来记录每个数组以及对应数字出现的频次.这里map的选择比较有讲究: 如果数据的范围有限制,如:只有小 ...

  4. php 去除数组中重复元素

    去除数组中重复元素, 找了下可以一下两个函数 php array_flip()与array_uniqure() $arr = array(…………) ;// 假设有数组包含一万个元素,里面有重复的元素 ...

  5. 将String类型的二维数组中的元素用FileOutputStream的write方法生成一个文件

      将String类型的二维数组中的元素用FileOutputStream的write方法生成一个文件import java.io.File;import java.io.FileOutputStre ...

  6. 功能要求:定义一个两行三列的二维数组 names 并赋值,使用二重循环输出二维数组中的元素。

    功能要求:定义一个两行三列的二维数组 names 并赋值,使用二重循环输出二维数组中的元素 names={{"tom","jack","mike&qu ...

  7. 【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 ...

  8. 数组中的元素 增加push用法 unshift() 方法 和减少pop() 方法 shift() 和其他位置增删 splice() 方法 join() 方法 reverse() 方法 sort() 方法

    push用法 push 英 [pʊʃ] 美 [pʊʃ] vt. 推,推动; vt. 按; 推动,增加; 对…施加压力,逼迫; 说服; n. 推,决心; 大规模攻势; 矢志的追求 定义和用法 push( ...

  9. js向一个数组中插入元素的几个方法-性能比较

    向一个数组中插入元素是平时很常见的一件事情.你可以使用push在数组尾部插入元素,可以用unshift在数组头部插入元素,也可以用splice在数组中间插入元素. 但是这些已知的方法,并不意味着没有更 ...

随机推荐

  1. Elasticsearch学习之相关度评分TF&IDF

    relevance score算法,简单来说,就是计算出,一个索引中的文本,与搜索文本,他们之间的关联匹配程度 Elasticsearch使用的是 term frequency/inverse doc ...

  2. [原]openstack-kilo--issue(一) httpd汇总

    /** 系统环境:redhat7.2 repo:163 openstack version : kilo author: lihaibo **/ 问题1:Invalid command 'group= ...

  3. gem install 和 bundle 区别

    bundle install 在设置了所有包含在Gemfile中的东西.你也可以传递参数. 如果在production模式下,你很清晰的区分了每个app需要的gems. gem install 则安装 ...

  4. Egret第三方库的制作和使用(模块化 第三方库)

    一.第三方库的制作 官方教程:第三方库的使用方法 水友帖子:新版本第三方库制作细节5.1.x 首先在任意需要创建第三方库的地方,右键,选择"在此处打开命令窗口" 输入egret c ...

  5. javaagent

    -javaagent:<jarpath>[=<options>]load Java programming language agent, see java.lang.inst ...

  6. 【CF884D】Boxes And Balls 哈夫曼树

    [CF884D]Boxes And Balls 题意:有n个箱子和若干个球,球的颜色也是1-n,有ai个球颜色为i,一开始所有的球都在1号箱子里,你每次可以进行如下操作: 选择1个箱子,将里面所有的球 ...

  7. Jmeter TCP取样器配置及发送图解

    最近在通过Jmeter测试TCP发送请求时,遇到相关问题,现记录 查看管方文档,TCP发送有三种启用方式: TCPClientImpl:文本数据,默认为这种 BinaryTCPClientImpl:传 ...

  8. Java虚拟机一

    Java发展至今,出现了很多Java虚拟机,从最初的Classic的Java虚拟机到Exact VM虚拟机,到现在最终被大规模部署和应用的是Hotspot虚拟机.       整数在Java虚拟机中的 ...

  9. thinkphp结合layui上传视频

    JS示例: <script type="text/javascript"> layui.use(['form', 'layedit','element', 'layda ...

  10. python标准库和第三方库的区别

    1.python的标准库是随着pyhon安装的时候默认自带的库. 2.python的第三方库,需要下载后安装到python的安装目录下,不同的第三方库安装及使用方法不同. 3.它们调用方式是一样的,都 ...