黑马程序员技术交流社区

标题: 数据排序有那几种方法 [打印本页]

作者: Louis.hui    时间: 2014-8-25 23:02
标题: 数据排序有那几种方法
数据排序有那几种方法
作者: yaodd321    时间: 2014-8-26 11:36
常见的是选择排序和冒泡排序。
选择排序:一次for循环将最小的值放在本次循环的最左边
public static void selectSort(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])
                                {
                                        swap(arr,x,y);         
                                }
                        }
                }       
        }

冒泡排序:一次for循环能将最大值放在本次循环的最右面
public static void bubbleSort(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])
                                {
                                        swap(arr,y,y+1);
                                }
                        }
                }
        }
其中swap(arr,x,y)是将arr[x],arr[y]互换位置。
作者: ximi    时间: 2014-8-26 20:43
对于自己不懂的知识点,可以百度下。上面有很多人的总结,很多写的很好的文章
作者: 忆梦追风    时间: 2014-8-26 21:51
目前我就知道三个,冒泡,选择,快速




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