码迷,mamicode.com
首页 > 其他好文 > 详细

随机打乱一组数据(算法)

时间:2014-07-22 23:05:15      阅读:481      评论:0      收藏:0      [点我收藏+]

标签:blog   java   使用   数据   2014   for   

最近一个项目的开发中遇到一个需求,有一组数1,2,3,4,5,6,7,8,0. 哈哈,如何将它随机打乱生成一个0-8的任意排列呢?比如生成0.6.1.2.3.4.5.7.8等等。

算法思路:

1、使用Arraylist存放这组数

2、随机生成Arraylist的下标值,根据下标值依次取出Arraylist值,直到Arraylist为空

哈哈,是不是很简单。。。。。。。。。。

下面看代码:

	private static void genRandomData() {
		int data[] = { 1, 2, 3, 4, 5, 6, 7, 8, 0 };
		int resultdata[] = new int[9];
		List<Integer> dataArray = new ArrayList<Integer>();
		for (int i = 0; i < data.length; i++) {
			dataArray.add(data[i]);
		}
		int i = 0;
		while (dataArray.size() > 0) {
			int index = (int) (Math.random() * dataArray.size());
			resultdata[i] = dataArray.get(index);
			i++;
			dataArray.remove(index);
		}

		for (int m = 0; m < resultdata.length; m++) {
			System.out.println(resultdata[m]);
		}
	}

   

随机打乱一组数据(算法),码迷,mamicode.com

随机打乱一组数据(算法)

标签:blog   java   使用   数据   2014   for   

原文地址:http://blog.csdn.net/axiaoquan/article/details/24796757

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!