您的位置:首页 > 编程语言 > Delphi

冒泡排序 - 零基础入门学习Delphi18

2011-09-28 23:31 253 查看

冒泡排序

让编程改变世界

Change the world by program

[caption id="attachment_576" align="aligncenter" width="300"]

冒泡排序[/caption]

好了,我们回到正题,这次的阶段性上机实践小甲鱼想让大家学点”骨髓”的东西,整天VCL 用多了也对大脑不好~

排序算法:排序(Sorting) 是计算机程序设计中的一种重要操作,它的功能是将一个数据元素(或记录)的任意序列,重新排列成一个关键字有序的序列。

排序算法有很多种,其中使用的比较多的我们会抽出来研究,今儿咱就聊聊这个冒泡排序。

原理讲解

[kml_flashembed publishmethod="static" fversion="8.0.0" movie="http://blog.fishc.com/wp-content/uploads/2012/08/冒泡排序.swf" width="400" height="300" targetclass="flashmovie" wmode="transparent"]





[/kml_flashembed]

算法规律:

第一轮:将第1 个数与第2 个数比较,若第1 个数大于第2 个数则交换它们的位置,否则不交换;

再将第2 个数和第3 个数比较,若第2 个数大于第3 个数则交换它们的位置,否则不交换;

依此类推,直到第(N-1)个数和第N 个数比较,若前者大于后者,则交换它们的位置。

经过 N-1 次比较后,将最小的数放在了第N个数的位置,即最小的数已经冒泡上去了。

第二轮开始按照第一轮的方法将剩下的 N-1 个数中最小的数也冒泡上去。

接着每一轮都将最小的数冒泡……

最后,有序的数列就出来了~

那么,我们可以得出以下结论:

需要比较N-1轮。

在第K轮比较中,需要比较N-K次。

比较的基本规则是:

若前面的数小于后面的数则交换,否则不交换。

[buy] 获得所有教学视频、课件、源代码等资源打包 [/buy]
[Downlink href='http://urlxf.qq.com/?J7B7Jv6']视频下载[/Downlink]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: