比如说
int[]num=int new{12,4,5,24,3,99,75,44,111};
用双for怎么排

解决方案 »

  1.   

    从大到小排序(冒泡法)int[]nu=int new{12,4,5,24,3,99,75,44,111}; 
    int temp = 0 ;
    for (int i = 0 ; i < nu.Length - 1 ; i++)
    {
       for (int j = i + 1 ; j < nu.Length ; j++)
       {
          if (nu[i] < nu[j])
          {
            temp = nu[i] ;
            nu[i] = nu[j] ;
            nu[j] = temp ;
           } 
        }
    }
      

  2.   

    int[]num= new int[]{12,4,5,24,3,99,75,44,111}; 
    int temp = 0;
    for(int i=0;i<num.length-1;i++) {
    for(int j=i+1;j<num.length;j++) {
    if(num[i] > num[j]) {
    temp = num[i];
    num[i] = num[j];
    num[j] = temp;
    }
    }
    }
    for(int i=0;i<num.length;i++) {
    System.out.print(num[i] + ",");
    }
      

  3.   

    int[]num=int new{12,4,5,24,3,99,75,44,111}; 冒泡
    for(int i=num.length;i>-1;i--){
        for(int j=i-1;j>-1;j--){
            if(num[i]<num[j]){
               int a=num[i];
               num[i]=num[j];
               num[j]=a;
             } 
        }
    }
    还有选择排序 分段排序等。
      

  4.   


    class Test {
    public static void main(String[] args) {
    int[] num=new int[]{12,4,5,24,3,99,75,44,111};
    //冒泡排序 //外循环,在这个例子中,第一次外循环i指向了12,然后进行内循环
    for(int i = 0; i < num.length; i++) {
    //内循环从尾部开始,也就是从指向111开始向左循环
    for (int j = num.length - 1; j > i; j--) {
    //挨个的遍历左循环里面的数,如果比外循环的值(第一次是12)大的话,交换
    if (num[i] < num[j]) {//我做的是降序,如果想做升序,把这里的小于号<改成大于号>就行了
    //这三行是交换的算法
    int temp = num[i];
    num[i] = num[j];
    num[j] = temp;
    }
    }//这样,第一次外循环执行一个数,内循环执行一遍,就把最大的数放到了第一位
    //第二次就把第二大的数,也就是99,放到了第二位,如此循环,会变成一个有序的数组
    } //打印结果
    for (int i : num)
    System.out.print(i + " ");
    }
    }
      

  5.   


    int[]num=int new{12,4,5,24,3,99,75,44,111}; 
    int swap = 0 ; 
    for (int i = 0 ; i < num.Length - 1 ; i++)  /*这个循环是用来控制一共有几轮的比较,每一轮比较都会产生                            一个最大的数,每轮需比较的数的个数依次递减 */

      for (int j = i + 1 ; j < num.Length, j++) /*这个循环是用来进行第一轮的比较,结束这个循环时最大的一                            个数已经排到了最后 */
     
     {                             
          if (num[i] < num[j])             /*这个IF语句是用来判断num[i] 和 num[j]的大小,然后                             把大的往后移,所以,结束IF语句时两两比较的后较大   {                          的数就往后移了 */
            swap = num[i] ; 
            num[i] = num[j] ; 
            num[j] = swap ; 
          } 
        } 
      

  6.   

    如果对于一个序列来说,它是完全无序的,那么采用选择排序。有利于交换数据项。
    public void selectionSort(){    int out, in, min;
        
        for(out = 0; out < n - 1; out++){
           min = out;
           for(in = out + 1; in < n; in++)
              if(a[in] < a[min])
                min = in;
           swap(out, min);
        }
    }
    如果对于一个序列来说,它是部分有序的,那么采用插入排序。有利于比较数据项。
    public void insertionSort(){    int in, out;
        for(out = 1; out < n; out++){
           long temp = a[out];
           in = out;
           while(in > 0 && a[in - 1] >= temp){
                a[in] = a[in - 1];
                --in;
           }
           a[in] = temp;
        }}
    至于冒泡排序,不推荐使用。因为,它不管是在比较数据项,还是在交换数据项(或者是复制数据项)都要消耗大量时间。
    public void bublleSort(){
     
        int out, in;
        
        for(out = n - 1; out > 1; out--) //n: ing the largest number of array.
           for(in = 0; in < out; in++)
              if(a[in] > a[in + 1])      //a: array.
                swap(in, in + 1);        //swap: changed data by this method.}
      

  7.   

    虽说冒泡是最慢的方法,但是在论坛就要冒泡泡
    public class BubbleSort { /**
     * @author lybjust
     */
    static int[] num = { 3, 4, 1, 5, 7, 2 };
    int tempNum; public void bubble(int[] num) {
    for (int i =num.length-1; i >0; i--) {
    for (int j = 0; j <i; j++) {
    if (num[j+1] < num[j]) {
    swap(j, j+1);
    }
    }
    }
    } public void swap(int i, int j) {
    tempNum = num[i];
    num[i] = num[j];
    num[j] = tempNum;
    } public static void main(String[] args) {
    // TODO Auto-generated method stub
    BubbleSort bubble = new BubbleSort();
    bubble.bubble(num);
    for (int i = 0; i < num.length; i++) {
    System.out.println(num[i]);
    }
    }}