随笔分类 -  算法

冒泡排序算法
摘要:一、基本思想依次比较相邻的两个数,将小数放在前面,大数放在后面。第1趟: 首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。至此第一趟结束,将最大的数放到了最后。第2趟: 仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再小于第2个数),将小数放前,大数放后,一直比较到倒数第二个数(倒数第一的位置上已经是最大的),第二趟结束,在倒数第二的位置上得到一个新的最大数(其实在整个数列中是第二大的数)。如此下去,重复以上过程,直至最终完成排序。由于在排序过程中总是小数往前放,大 阅读全文

posted @ 2011-05-25 16:12 程序媛蒲苇 阅读(4825) 评论(2) 推荐(8)

选择排序算法
摘要:每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。一、基本思想:n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果。1、初始状态无序区为R[1…n],有序区为空2、第1趟排序在无序区R[1…n]中选出关键字最小的记录R[k],将它与无序区的第1个记录R[1]交换,使R[1…1]和R[2…n]分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区。……3、第i趟排序第i趟排序开始时,当前有序区和无序区分别为R[1…i-1]和R[i…n](1<=i<=n-1)。该趟排序从当前无序区中选出关键字最小 阅读全文

posted @ 2011-05-24 18:13 程序媛蒲苇 阅读(497) 评论(0) 推荐(0)

导航