黑马程序员技术交流社区

标题: 我想知道选择排序和冒泡排序哪种效率高点? [打印本页]

作者: Dark县令    时间: 2015-3-11 18:17
标题: 我想知道选择排序和冒泡排序哪种效率高点?
各位爷,选择排序和冒泡排序还有插入排序哪种效率高点啊?
  1. /*
  2. 选择排序
  3. */
  4. public static void selectSort(int[] arr)
  5.         {
  6.                 for (int x=0;x<arr.length-1 ;x++ )//最后一个值不用比,当最后一个值的时候不用在比较了。
  7.                 {
  8.                         for (int y=x+1;x<arr.length ;y++ )
  9.                         {
  10.                                 if(arr[x]>arr[y])
  11.                                 {
  12.                                         int temp = arr[x];
  13.                                         arr[x] = arr[y];
  14.                                         arr[y] = temp;
  15.                                 }
  16.                         }
  17.                 }
  18.         }

  19. /*
  20.                 冒泡排序法
  21.         */
  22.         public static void bubbleSort(int[] arr)
  23.         {
  24.                 for (int x=0;x<arr.length-1 ;x++ )
  25.                 {
  26.                         for (int y=0;y<arr.length-x-1 ;y++ )//-x:让每一次比较的元素减少,-1:是为了避免下标越界。
  27.                         {
  28.                                 if(arr[y]>arr[y+1])
  29.                                 {
  30.                                         int temp = arr[y];
  31.                                         arr[y] = arr[y+1];
  32.                                         arr[y+1] = temp;
  33.                                 }
  34.                         }
  35.                 }
  36.         }
复制代码

他们有实际应用嘛?还是说只是JAVA里面的一种算法!
作者: 杨强彪    时间: 2015-3-11 20:28
插入!插入效率高 速度快(他居然要最少10个字 。。。)
作者: wf111sxwf    时间: 2015-3-11 23:42
效率都很低 想要高的  的用 快速和希尔
作者: 和谐木马    时间: 2015-3-12 00:31
这两种都是比较简单的排序算法,一般都是给我们熟悉算法的思路,思想的吧
作者: Dark县令    时间: 2015-3-12 01:01
wf111sxwf 发表于 2015-3-11 23:42
效率都很低 想要高的  的用 快速和希尔

shell看不懂啊!有没有详细点的资料给我研究研究啊!
作者: cat73    时间: 2015-3-12 07:27
Java核心包里的Arrays.sort()就很屌,闲的蛋疼可以去看看源码,反正我基本上是跪了。
作者: 轻羽涉池    时间: 2015-3-12 08:53
嗯,效率都不算高,这是种思路,视频上说面试容易问到,
作者: ym199210    时间: 2015-3-12 08:59
都差不多吧 算法都是那样。
作者: 蓝玉    时间: 2015-3-12 09:17
重在掌握思想,实际开发用Java核心包里的Arrays.sort()
作者: langmb    时间: 2015-3-12 09:33
这两个都不行的  都太低了
作者: hyc120500    时间: 2015-3-12 10:06
这2种算法效率好像都不高,
作者: fanshuai    时间: 2015-3-12 10:09
wf111sxwf 发表于 2015-3-11 23:42
效率都很低 想要高的  的用 快速和希尔

我看的那些考试题中有要求:用较高的排序方式排序,应该用什么?不是只要掌握选择和冒泡就行吗?
难道还要用希尔:funk:。
作者: 董志立    时间: 2015-3-12 10:37
恩恩,就是一些比较简单的排序算法,效率不高的!!
作者: wenke    时间: 2015-3-12 13:22
Arrays.sort()  这个方法估计是人sun公司内部用最快最效率的算法早就给实现了   以后肯定是用这个  冒泡什么的当做编程练习题玩吧 练练指法
作者: lostnotes    时间: 2015-3-12 15:07
我个人认为选择排序效率较高一点
作者: 勇闯☀☀黑马    时间: 2015-3-12 16:50
这只是初级的,都不高。




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