基于冒泡法排序动态演示程序.docVIP

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于冒泡法排序动态演示程序

基于冒泡法排序动态演示程序   摘要:冒泡排序方法是借助“交换”进行的一种最基本的排序方法,也是初学程序设计的人员最早接受的算法之一。学习程序设计,理解算法的思想很重要,利用C#语言中提供的功能强大的图形界面,设计了冒泡排序算法的动态演示程序,有助于初学程序设计者更好地理解这一基本排序算法的思想。   关键词:冒泡法排序;标签控件;定时器控件;标志;交换位置   中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2009)05-1175-04   Dynamic Demonstration Program Based on Bubblesort   FENG Na,SUN Yi-xin   (Computer Engineering Department, Weifang Educational College,Qingzhou 262500, China)   Abstract: Bubblesort, by dint of “switch”, is the most fundamental sorting method and one of the earliest accepted arithmetic by the program learners. It is vital to understand the theory of arithmetic when learning programming. Program learners, taking the advantages of the powerful graphical interfaces provided by the C# Language and of the designed dynamic demonstration program based on bubblesort arithmetic, will understand better the theory of the basic sorting arithmetic.   Key words: bubble sort; label control; timer control; flag; exchange of position      排序(Sorting)是计算机程序设计中的一项重要操作,其功能是对于一个数据元素集合或序列重新排列成一个按数据元素某个项值有序的序列。在实际应用中,为了便于查找,通常希望计算机中数据表是按关键码有序的。因此,掌握一些典型的排序方法是每一个学习计算机编程的人员所必须的。      1 冒泡法排序算法简介      冒泡排序(Bubble Sort)是各种排序方法中最简单、最基本的一种,在一般的C语言教材或数据结构的教材上都有介绍。冒泡排序的具体方法是:假设要对数组A[1..n]中的元素进行非降序排序,则首先比较元素A[1]和A[2],若为逆序则将二者交换,然后比较元素A[2]和A[3],若为逆序则将二者交换,依次类推,直到比较最后两个元素A[n-1]和A[n],称为一趟“冒泡”,其结果是将数组中值最大的元素放到了整个序列的最后,而数组中值较小的元素都上升一个位置。然后再对剩余的A[1]到A[n-1]的元素进行第二趟“冒泡”,将具有次大值的元素放到A[n-1]的位置上。直到第n-1趟排序,在A[1]和A[2]之间进行“冒泡”后,排序完成。   冒泡排序是以交换为基础的排序算法,若在某一趟排序中未发现元素进行交换,则说明所有元素都已有序,冒泡排序过程可在该趟排序后终止。因此,可设一个标志exchange,在每趟排序开始前,先将其置为false,若排序过程中发生了交换,则将其置为true,每趟排序结束时检查exchange,若未曾发生过交换则终止算法,不再进行下一趟排序。用C#实现的冒泡排序程序如下:   static void BubbleSort(int[] a)   { //共需要a.Length - 1遍循环,a.Length为元素个数   bool exchange = true; //设置交换标志   //如果未到循环结束并且有交换则继续进行下一趟扫描   for (int i = 0; i a.Length exchange; i++)   { exchange = false; //每趟扫描前假设不发生交换   for (int j = 0; j arr.Length - i-1; j++)   //比较相邻两个元素的值,如果逆序则交换相邻元素的值   if (a[j] a[j + 1])   { int temp = a[j];   a[j] = a[j +

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档