A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 18643448863 中级黑马   /  2014-9-20 15:17  /  728 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 18643448863 于 2014-10-9 07:40 编辑
  1. class xuanZhe
  2. {
  3.    public static void paixu(int[] arr)
  4.         {
  5.                 for(int x=0;x<arr.length;x++)
  6.                         {
  7.                                 for(int y=x+1;y<arr.length[color=Red]-x[/color];y++)
  8.                                         if(arr[x]>arr[y])
  9.                                         {int z=arr[x];
  10.                                         arr[x]=arr[y];
  11.                                         arr[y]=z;        }
  12.                         }
  13.         }  
  14.         public static void main(String[] args)

  15.                 {int [] arr={5,1,6,4,2,8,9};
  16.                 paixu(arr);
  17.                 paixudayin(arr);
  18.             }


  19.         public static void paixudayin(int[] arr)
  20.                 {
  21.                 System.out.print("[");
  22.                         for(int x=0;x<arr.length;x++)
  23.                         {        if(x!=arr.length-1)
  24.                                 System.out.print(arr[x]+",");
  25.                                         else
  26.                                         System.out.print(arr[x]+"]");}
  27.                                                         


  28.                 }
  29. }
复制代码


求个解释 为什么 加上上面的那个-x 也能排序 结果也正确  可是没看懂咋回事 咋比较的这是

2 个回复

倒序浏览
  1. class xuanZhe
  2. {
  3.    public static void paixu(int[] arr)
  4.         {
  5.                 for(int x=0;x<arr.length;x++)
  6.                         {
  7.                                 for(int y=x+1;y<arr.length-x;y++)
  8.                                         if(arr[x]>arr[y])
  9.                                         {int z=arr[x];
  10.                                         arr[x]=arr[y];
  11.                                         arr[y]=z;        }
  12.                         }
  13.         }  
  14.         public static void main(String[] args)

  15.                 {int [] arr={5,1,6,4,2,8,9};
  16.                 paixu(arr);
  17.                 paixudayin(arr);
  18.             }


  19.         public static void paixudayin(int[] arr)
  20.                 {
  21.                 System.out.print("[");
  22.                         for(int x=0;x<arr.length;x++)
  23.                         {        if(x!=arr.length-1)
  24.                                 System.out.print(arr[x]+",");
  25.                                         else
  26.                                         System.out.print(arr[x]+"]");}
  27.                                                        


  28.                 }
  29. }
复制代码
回复 使用道具 举报
我懂了  我写的这个数组 比较特殊  加上-x  会有比较不到的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马