黑马程序员技术交流社区

标题: 简述排序算法 [打印本页]

作者: 杨恩锋    时间: 2011-10-28 17:30
标题: 简述排序算法
分别讲诉如下几种排序算法的性能,假设对一个数组进行排序,用如下冒泡排序、快速排序、直接插入法排序、希尔排序、以及sort排序,分别阐述这几种排序。对比各种排序有什么优势,从速度和性能上解释,尽量用代码分别给出。
作者: 黄朝辉    时间: 2011-10-28 19:35
冒泡排序法 可以说是最慢的排序法
后面几种排序都差不多
Sort是系统自带的排序 实现了两个接口 想不起来了
如果真想了解 建议楼主去学习下 数据结构
作者: 何荣智    时间: 2011-10-29 12:10
其实算法在编程中是很重要的啊  我们要培养自己的逻辑思维啊  建议你看看  C#的一本数据结构的书 你会学到很多的知识的啊!!
作者: 10642491    时间: 2011-10-30 07:35
杯具了!哥们,在下只接触过冒泡,其它的还未学习,看楼上的都说得学数据结构,看来要学的东西还真挺多的呵呵。
作者: 郑文    时间: 2011-11-2 09:12
算法的性能高 与数据的分布有关。选择算法应该根据数据的分布特点请选择,例如:两边数值大,中间小的数据选择不同的算法效率绝对不同的,不是说冒泡效率就一定低。具体你看数据结构,上面有讲。
作者: 宋天琪    时间: 2011-11-4 21:29
for (int i = 0; i < num.Length - 1; i++)
{
int flag = 1;
for (int j = 0; j < num.Length - 1 - i; j++)
{

if (shu[j] > shu[j + 1])

{ flag = 0;
int temp = shu[j];
shu[j]=shu[j + 1];
shu[j + 1] = temp;}

}
if (flag == 1)
break;
}


冒泡的代码。。。。
作者: 小石    时间: 2011-11-6 21:00
冒泡口诀:N个数字来排队,两两相比小靠前,外层循环N-1,内层循环N-1-i
我就是这样记的 嘿嘿{:soso_e113:}

作者: liucaifu    时间: 2011-11-7 13:04
建议你先看下数据结构,因为你说的这些全是数据结构里面的知识,如果你要写算法的自,建议使用泛型,这样写的目的是高效,同时让你感受到面象对象的强大。




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