当前位置: 代码迷 >> J2EE >> 随机数 +冒泡排序!
  详细解决方案

随机数 +冒泡排序!

热度:461   发布时间:2016-04-22 01:43:23.0
随机数 +冒泡排序求助!!!
import java.util.Random;

public class SC {
public static void main(String [] args){
int randomNum;
int [] b=new int[20]; 
for(int i=0;i<20;i++){
b[i]=0;


}
for(int i=0;i<20;i++){
for(int j=0;j<=i;j++){
randomNum=1+(int)(Math.random()*100);


if(b[j]==randomNum ){
break;
}
if(j==i){
b[j]=randomNum;
System.out.println("第"+(j+1)+"个整数是"+b[j]);
}

}
}
}
}

在本程序上,实现冒泡的正序排法,好心人帮帮忙,重赏!!!!

------解决方案--------------------
N个数字来排队,两两相比小靠前;
外层循环N-1,内层循环N-1-i.




------解决方案--------------------
你这随机真不太好看。
Java code
import java.util.Arrays;import java.util.Random;public class SC{    public static void main(String[] args)    {        int randomNum;        int[] b = new int[20];        for (int i = 0; i<20; i++)        {            b[i] = 0;        }        for (int i = 0; i<20; i++)        {            for (int j = 0; j<=i; j++)            {                randomNum = 1+(int) (Math.random()*100);                if (b[j]==randomNum)                {                    break;                }                if (j==i)                {                    b[j] = randomNum;                    System.out.println("第"+(j+1)+"个整数是"+b[j]);                }            }        }        sort(b);            }        public static void sort(int[] array)    {        for(int i=0;i<array.length;i++)        {            for(int j=i+1;j<array.length;j++)            {                if(array[i]>array[j])                {                    int temp=array[i];                    array[i]=array[j];                    array[j]=temp;                }            }        }        System.out.println(Arrays.toString(array));    }}
------解决方案--------------------
你的随机是要打算生成不重复的数?
Java code
    public static void main(String[] args)    {        int i=0;        int[] b = new int[20];        Set set=new HashSet();        while(set.size()<20)        {            int randomNum=1+(int) (Math.random()*100);            if(set.add(randomNum))            {                b[i++]=randomNum;            }        }        sort(b);            }        public static void sort(int[] array)    {        for(int i=0;i<array.length;i++)        {            for(int j=i+1;j<array.length;j++)            {                if(array[i]>array[j])                {                    int temp=array[i];                    array[i]=array[j];                    array[j]=temp;                }            }        }        System.out.println(Arrays.toString(array));    }
------解决方案--------------------
for(int i=0;i<array.length;i++)
{
for(int j=i+1;j<array.length;j++)
{
if(array[j]>array[j+1])
{
int temp=array[j];
array[j+1]=array[j];
array[j]=temp;
}
}
}
System.out.println(Arrays.toString(array));

------解决方案--------------------
import java.util.Random;
public class BubbleSort{
public static void main(String[] args){
Random rand=new Random();
int[] RandomNum=new int[20];
for(int i=0;i<RandomNum.length;i++){
RandomNum[i]=rand.nextInt()%100;
}
bubbleSort(RandomNum);
System.out.println("按升序:");
for(int i=0;i<RandomNum.length;i++){
System.out.print(RandomNum[i]+" ");
  相关解决方案