冒泡法和选择排序法有什么不同?最好举下例子

能不能用C语言程序作一下补充说明?

第1个回答  2011-12-30
冒泡排序和选择排序都是稳定的排序方法。
不同的地方是处理的过程不一样。

冒泡是相邻的两两比较,把小的交换上去,每一趟比较都会得到一个最小值。一个一个的就像是冒泡一样,比较形象。如果在一趟比较中,没有发现要交换的数值,则排序完成。

选择排序是从待排序队列中选出最小的值,放到已排序队列的后面。
例如待排序队列为: 6 3 2 5

升序(冒泡)
第一趟: 第一次比较 3 6 2 5
    第二次比较 3 2 6 5
    第三次比较 3 2 5 6
第二趟:2 3 5 6
第三趟:未发现有交换,排序结束

选择排序:
第一趟:2 3 6 5 (选出2,放到第一位置上)
第二趟:2 3 6 5(选出3,放到第二位置上)
第三趟:2 3 5 6(选出5,放到第三位置上)

冒泡法和选择排序法有什么不同?最好举下例子
冒泡排序和选择排序都是稳定的排序方法。不同的地方是处理的过程不一样。冒泡是相邻的两两比较,把小的交换上去,每一趟比较都会得到一个最小值。一个一个的就像是冒泡一样,比较形象。如果在一趟比较中,没有发现要交换的数值,则排序完成。选择排序是从待排序队列中选出最小的值,放到已排序队列的...

C语言 冒泡排序法和选择法的不同,本质区别
但通常,选择排序更快一点

c语言中起泡法和选择法有什么不同,急!,谢谢!
两者最大的区别在于算法本身。起泡法(冒泡法)是相邻元素两两比较,每趟将最值沉底即可确定一个数在结果的位置,确定元素位置的顺序是从后往前,其余元素可能作相对位置的调整。可以进行升序或降序排序。选择法是每趟是选出一个最值确定其在结果序列中的位置,确定元素的位置是从前往后,而每趟最多进行...

选择排序算法与冒泡排序算法有何异同啊?
区别在于:在交换的方式上 冒泡算法,每次比较如果发现较小的元素在后面,就交换两个相邻的元素。而选择排序算法的改进在于:先并不急于调换位置,先从A[1]开始逐个检查,看哪个数最小就记下该数所在的位置P,等一躺扫描完毕,再把A[P]和A[1]对调,这时A[1]到A[10]中最小的数据就换到了最前...

C语言中冒泡排序法和选择排序法有哪些不同
不同点:冒泡排序法:一趟一趟的将两个相邻的数进行交换如果有10个数则需要排9躺,如果是从大到小输出则需要每次将后一个数和前一个数进行比较将较大的数赋值给钱一个数,将较小的数赋值给后一个数,其实就是两个数交换,那么第一趟交换完毕后,最小的数便出现在了数组的最后面,然后进行第二...

C语言中冒泡排序法和选择排序法有哪些不同
1、冒泡排序法:一趟一趟的将两个相邻的数进行交换如果有10个数则需要排9躺,如果是从 大到小输出则需要每次将后一个数和前一个数进行比较将较大的数赋值给钱一个数,将较小的数赋值给后一个数,其实就是两个数交换,那么第一趟交换完毕后,最 小的数便出现在了数组的最后面,然后进行第二趟...

请问冒泡法与选择法的区别在哪啊??
1:选择法 所谓的选择法就是先将10个数中最小的数与a[0]对换;再将a[1]到a[9]中的最小数与a[1]对换,依次类推,每比较一次,就找出一个没有经过排序的数中最小的一个.所以一共比较9轮.例如用4个数排序,第一次比较就是把4个数中的最小的数与a[0]对换,第二次:把余下的3个数中最小...

冒泡排序和选择排序区别
1、稳定性:冒泡排序是一种稳定的排序算法,而选择排序则不是。在冒泡排序中,相等的元素在排序后不会改变其相对位置,而在选择排序中,相等的元素可能会因为交换而改变其相对位置。2、交换次数:冒泡排序在每一轮比较中,只要相邻元素顺序不对就进行交换,而选择排序在每一轮比较中只进行一次交换,即...

冒泡排序和选择排序的不同之处有哪些?
冒泡排序和选择排序的根本区别就是 1)选择选好了(最大或最小元),需要交换(最大或最小元和当前元素不在同一位置),才交换,是选择排序;2)比较完成,需要交换就交换(元素逆序,则交换)。是冒泡选择排序;举例 选择排序:升序 i 自小到大 i前面的是已经排好序的数据。选一个当前位置i 以后...

选择排序和冒泡排序的区别是什么?
1、冒泡排序是左右两个数相比较,而选择排序是用后面的数和每一轮的第一个数相比较;2、冒泡排序每轮交换的次数比较多,而选择排序每轮只交换一次;3、冒泡排序是通过数去找位置,选择排序是给定位置去找数;4、当一个数组遇到相同的数时,冒泡排序相对而言是稳定的,而选择排序便不稳定;5、在时间...

相似回答