一、基础冒泡排序的基础概念
1.冒泡排序的算法如下:重复地走访要排序的数列,一次比较两个元素,如果它们的顺序错误,就把他们交换过来,走访数列的工作需要重复进行,直到没有再需要交换的数列,此时该数列已经完成排序。
二、冒泡算法的基本思路
1.从头开始扫描待排序的元素,在扫描的过程中一次对相邻的元素进行比较,将关键字值较大的元素后移。 2.每经过一趟排序后,关键字值最大的元素将移到末尾,此时记下该元素的位置,下一次排序只需要比较到此位置为止,直到所有元素都已经被有序排列。
3.一般来说,对n个元素进行冒泡排序,总共需要进行n-1次,第一次需要比较n-1次,第二次需要比较n-2次,以此类推,第i次则需要比较n-i次,最后一次即第第n-1次需要比较1次。
三、选择排序的基础概念
1.选择排序是一种简单直观的排序算法,它的工作原理是每一次从待排序的数据元素中选出最小或者最大的一个元素,将其存放在序列的起始位置,直到全部待排序的数据排完。
四、选择排序的基本思路
选择排序和冒泡排序差不多,只是冒泡排序在发现比它小时就交换位置,而选择排序只有在确定了最小的数据之后才会发生交换。
1.和冒泡排序一样,对n个元素进行选择排序,总共需要进行n-1次,第一次需要比较n-1次,第二次需要比较n-2次.......第i次需要比较n-i次,最后一次即第n-1次需要比较一次。
2.第i趟选择排序是通过n-i关键字的比较,从n-i个记录中选出关键字最小的记录,并和第i个记录进行交换。
3.每一次比较相邻元素时,仅将较小值的位置记录下来,只有在一次循环完成以后确定了最小的数据,才发生交换。
五、排序口诀
外层循环长度-1
内层循环长度-1
外层循环中完成比较后值的交换