黑马程序员技术交流社区

标题: 如何对数组元素进行排序? [打印本页]

作者: hailong154    时间: 2016-4-6 01:00
标题: 如何对数组元素进行排序?
如何对数组中的元素进行排序?
作者: 炙爱小爱    时间: 2016-4-6 10:41
class  ArrayTest1
{
        public static void main(String[] args)
        {
                int[] arr={12,6,18,9,21,5};
                arraytest(arr);
                //babblearr(arr);
                selectarr(arr);
                arraytest(arr);
       
        }

//冒泡排序
        /*public static void babblearr(int[] arr)
        {
                for (int x=0;x<arr.length-1;x++)
                {
                        for (int y=0;y<arr.length-x-1;y++)
                        {
                                if(arr[y]>arr[y+1]){
                                        int temp=arr[y];
                                        arr[y]=arr[y+1];
                                        arr[y+1]=temp;}
                        }
                }
        }*/
//遍历数组       
        public static void arraytest(int[] arr)
        {
                System.out.print("[");
                for (int x=0;x<arr.length;x++)
                {
                        if(x!=arr.length-1)
                                System.out.print(arr[x]+",");
                        else
                                System.out.print(arr[x]+"]"+"\n");
                }
        }
//选择排序
        public static void selectarr(int[] arr)
        {
                for (int x=0;x<arr.length-1;x++)
                {
                        for (int y=x+1;y<arr.length;y++)
                        {
                                if(arr[x]>arr[y]){
                                        int temp=arr[x];
                                        arr[x]=arr[y];
                                        arr[y]=temp;}
                        }
                }
    }
}       
作者: ZTK12345    时间: 2016-4-6 21:49
这么多方法,感谢分享
作者: hailong154    时间: 2016-4-7 00:06
炙爱小爱 发表于 2016-4-6 10:41
class  ArrayTest1
{
        public static void main(String[] args)

觉得你的冒泡排序的和选择排序的代码上没啥区别啊
作者: aomingchao    时间: 2016-4-7 00:21
直接使用Arrays.sort()就可以啦!!
作者: willsame    时间: 2016-4-7 00:42
楼上说的很详细,所以,我是来回帖的
作者: q6619866    时间: 2016-4-7 00:50
aomingchao 发表于 2016-4-7 00:21
直接使用Arrays.sort()就可以啦!!

这样的确容易,但是面试的时候可以说,代码不会写,但是我会用方法排序吗?
作者: 善良的死神达乐    时间: 2016-4-7 01:03
hailong154 发表于 2016-4-7 00:06
觉得你的冒泡排序的和选择排序的代码上没啥区别啊

同意!!!!是区别不大.......

但是....老师说了,这些个方法虽然现在敲代码基本用不到,但是还是要记着.现在去工作面试都还有考官考你冒泡排序的!而且是手写!!!!!!!
作者: oassuperhan    时间: 2016-4-7 12:15
冒泡排序什么的其实对平常写代码没什么用,效率低下而且还要浪费时间自己敲,只是为了应付面试,所以找到工作之前还是要掌握好的。如果连这个最简单的排序方法都实现不好,那么HR凭什么相信你能把项目做好呢?
作者: keheng134    时间: 2016-4-7 17:41
炙爱小爱 发表于 2016-4-6 10:41
class  ArrayTest1
{
        public static void main(String[] args)

能说说为什么一个是x和y比,一个是y和y+1比不
作者: z466507943    时间: 2016-4-7 20:02
遍历,冒泡排序,或者直接arrays.sort
作者: hailong154    时间: 2016-4-7 22:53
aomingchao 发表于 2016-4-7 00:21
直接使用Arrays.sort()就可以啦!!

基础知识还是要掌握的,万一面试要你手写,你直接写个Arrays.sort()。
作者: hailong154    时间: 2016-4-7 22:54
oassuperhan 发表于 2016-4-7 12:15
冒泡排序什么的其实对平常写代码没什么用,效率低下而且还要浪费时间自己敲,只是为了应付面试,所以找到工 ...

说的好,就是这样想的。工作中其实根本用不到的
作者: hailong154    时间: 2016-4-7 22:55
willsame 发表于 2016-4-7 00:42
楼上说的很详细,所以,我是来回帖的

欢迎回帖,谢谢啦
作者: hailong154    时间: 2016-4-7 23:02
willsame 发表于 2016-4-7 00:42
楼上说的很详细,所以,我是来回帖的

欢迎回帖,谢谢啦




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2