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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张聪珉 中级黑马   /  2013-8-2 23:13  /  2141 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

{5,1,6,4,2,8,9}
  1. class ArrayTest2  
  2. {
  3.         public static void slectsort(int [] arr)
  4.         {
  5.                 for(int x=0;x<arr.length-1;x++)
  6.                 {
  7.                         for(int y=x+1;y<arr.length;y++)
  8.                         {
  9.                                 if (arr[x]>arr[y])
  10.                                 {
  11.                                         swap(arr,x,y);
  12.                                 }
  13.                         }
  14.                 }
  15.                
  16.         }
  17.         public static void main(String[] args)
  18.         {
  19.                 int[] arr = {5,1,6,4,2,8,9};

  20.                 printArray(arr);

  21.                 printArray(arr);
  22.                        
  23.         }
  24.         public static void swap(int[] arr,int a,int b)
  25.         {
  26.                 int temp = arr[a];
  27.                 arr[a] = arr[b];
  28.                 arr[b] = temp;
  29.         }
  30.         public static void printArray(int[] arr)
  31.         {
  32.                 System.out.print("[");
  33.                 for(int x=0; x<arr.length; x++)
  34.                 {
  35.                         if(x!=arr.length-1)
  36.                                 System.out.print(arr[x]+", ");
  37.                         else
  38.                                 System.out.println(arr[x]+"]");

  39.                 }               
  40.         }
  41. }
复制代码
我晕了啦,看不出哪里出问题了,运行结果在下面,求解

QQ图片20130802231300.jpg (11.27 KB, 下载次数: 82)

QQ图片20130802231300.jpg

2 个回复

正序浏览
徐龙飞 发表于 2013-8-2 23:51
楼主主函数main里没有调用选择排序函数selectSort函数当然两次输出的结果是一样的呀,应该在主函数里面第一 ...

谢谢哈,解决了
回复 使用道具 举报
楼主主函数main里没有调用选择排序函数selectSort函数当然两次输出的结果是一样的呀,应该在主函数里面第一个printArray(arr)后面加上selectSort(arr);后,然后编译打印你就可以看到效果了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马