论坛首页 入门讨论版 Java

java排序

浏览 296 次
该帖已经被评为新手帖
作者 正文
最后更新时间:2008-05-03
.........????
 public static int[] sort(int[] num)
    {
        for (int i = 0; i < num.length; i++)
        {
            for (int j = 0; j < num.length- i - 1; j++)
            {
                int a = num[j];
                int b = num[j + 1];
                if (a < b)
                {
                    num[j] = b;
                    num[j + 1] = a;
                }
            }
        }
        return num;
    }

(依次取出数组中的值跟其他位置上的值比较)  此为选择排序??

 

	public static int[] sort(int[] num) {
		int temp;
		for(int i = 0; i < num.length; 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;
				}
			}
		}
		return num;
	}

 

 

   
最后更新时间:2008-05-02
推荐楼主看看java数据结构,冒泡排序很少用的
   
0 请登录后投票
最后更新时间:2008-05-02
谢谢,有时间一定看。
请指教,是不是我的写法有问题啊?
   
0 请登录后投票
最后更新时间:2008-05-02
@1L:ZL的冒泡法不对吧.
@2L:冒泡法不常用么?在数据量比较小的情况下,特别是排序基本完成的情况下,这种排序方法不失为一个好的选择

boolean flag=true;
for(int i=0;i<length-2&&flag;i++){
   flag=false;
   for(int j=i;j<length-1;j++){
      if(num[j]>num[j+1]){
        swap(num[j],num[j+1]);
        flag=false;
      }
   }
}
   
0 请登录后投票
最后更新时间:2008-05-03
tianbianlan 写道
@1L:ZL的冒泡法不对吧.
@2L:冒泡法不常用么?在数据量比较小的情况下,特别是排序基本完成的情况下,这种排序方法不失为一个好的选择

boolean flag=true;
for(int i=0;i<length-2&&flag;i++){
   flag=false;
   for(int j=i;j<length-1;j++){
      if(num[j]>num[j+1]){
        swap(num[j],num[j+1]);
        flag=false;
      }
   }
}

我的确错了,谢谢指出。
   
0 请登录后投票
论坛首页 入门讨论版 Java

跳转论坛:
JavaEye推荐