100到200之间共101个整数,给出一个随机序。控制时间即要求时间复杂度尽可能小

解决方案 »

  1.   

    public class Num {
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    double i=Math.random()*200;
    Double j=new Double(i);
    System.out.println("num="+j.intValue());
    }}
      

  2.   

    看错了 这个是0-200的 你自己把上面的200改成300 输出时候j.intValue()-100就可以
      

  3.   

    应该是把200改成100,输出的时候j.intValue()+101
      

  4.   

    import java.util.ArrayList;
    import java.util.List;public class RadomArrarOut { /**
     * @param args
     * @return
     */ public static void main(String[] args) {
    // TODO Auto-generated method stub


    Object[] intTest = { "1", "2", "3", "4", "5" };

    List list = new ArrayList();
    for (int i = 0; i < intTest.length; i++) {
    list.add(i, intTest[i]);
    } for (int i = 0; i < intTest.length; i++) {
    double random = Math.random();
    int temp = (int) (random * (intTest.length - i));

    System.out.println(list.get(temp));
    list.remove(temp); }

    }
    }
      

  5.   

    import java.util.ArrayList;
    import java.util.List;public class RadomArrarOut { /**
     * @param args
     * @return
     */ public static void main(String[] args) {
    // TODO Auto-generated method stub


    Object[] intTest = new Object[100];
    int value=100;
    for(int i=0;i<100;i++){

    intTest[i]=value+i;
    System.out.println(intTest[i]);
    }
    List list = new ArrayList();
    for (int i = 0; i < intTest.length; i++) {
    list.add(i, intTest[i]);
    } for (int i = 0; i < intTest.length; i++) {
    double random = Math.random();
    int temp = (int) (random * (intTest.length - i));

    System.out.println(list.get(temp));
    list.remove(temp); }
    System.out.println("====result===="+intTest.length);

    }
    }
    还是把你写全了吧,你自己看看。
      

  6.   

    你把第一次System.out.println()去掉 我做测试用的 其他都好了。搞定说一声。
      

  7.   

    List<Integer> list = new ArrayList<Integer>();
    for(int i = 100; i <= 200; i++)
    list.add(i);
    Collections.shuffle(list);
    System.out.println(list);
      

  8.   

    public static void main(String args[]) {
            List list = new ArrayList();
            for (int i = 100; i <= 200; i++)
                list.add(i+"");
            Collections.shuffle(list);
            System.out.println(list);
        }
      

  9.   

    int [] arrayInt=new int[100];
    for(int i=0;i<101;i++){
         arrayInt[i]=i+100;
    }for(int i=101;i>1;i++){
         int getX=new Random().nextInt(i);
         int temp=array[i-1];
         arrayInt[i-1]=arrayInt[getX];
         arrayInt[getX]=temp; 
    }
    for(int i=0;i<101;i++)
        System.out.println(arrayInt[i]);