生成1千万不重复的数字_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 生成1千万不重复的数字

生成1千万不重复的数字

 2014/5/3 18:13:44  makemyownlife  程序员俱乐部  我要评论(0)
  • 摘要:packagecom.myway.study;importorg.apache.commons.io.FileUtils;importjava.io.File;importjava.io.FileWriter;importjava.io.IOException;importjava.util.Random;/****生成1千万不重复的数字*User:zhangyong*Date:14-5-2*Time:下午11:02*TochangethistemplateuseFile|Settings
  • 标签:
class="java" name="code">

package com.myway.study;

import org.apache.commons.io.FileUtils;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Random;

/**
 * 
 * 生成1千万不重复的数字
 * User: zhangyong
 * Date: 14-5-2
 * Time: 下午11:02
 * To change this template use File | Settings | File Templates.
 */
public class TenMillionNotCurrentNumber {

    public static void main(String[] args) {
        int max = 10000000;
        Random random = new Random();
        int[] arr = new int[max];
        System.out.println(arr.length);
        String storePath = "D:\\1.txt";
        //设置初始值
        for (int i = 0; i < arr.length; i++) {
            arr[i] = i + 1;
        }
        //调用随机来调换位置
        for (int n = 0; n < max; n++) {
            int ii = (int) random.nextInt(max);
            if (ii == max) {
                ii = ii - 1;
            }
            int jj = (int) random.nextInt(max);
            if (jj == max) {
                jj = jj - 1;
            }
            //调换位置
            swap(arr, ii, jj);
        }
        for (int i = 0; i < arr.length; i++) {
            try {
                String data = (i == arr.length - 1) ? String.valueOf(arr[i]) : (String.valueOf(arr[i]) + ',');
                FileUtils.writeStringToFile(new File(storePath), data, true);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    public static void swap(int[] arr, int ii, int jj) {
        int temp = arr[ii];
        arr[ii] = arr[jj];
        arr[jj] = temp;
    }


}

上一篇: Wojilu学习笔记 (01) 下一篇: 创业心得
  • 相关文章
发表评论
用户名: 匿名