题目大意:
(维基百科)冒泡排序时一种简单的排序算法,它重复对序列进行扫描并不停检查相邻量元素是否符合大小顺序,如果不符合就交换它们,直到不需要交换位置(便停止扫描,表示排序的终止),该算法因升序排列中每次扫描都将最小的元素交换至前面而得名(就如同泡泡从水底浮至水面一样),因为它只通过比较进行排序,因此它是一种比较排序法。
该算法复杂度为O(n^2),假设经过T论扫描序列刚好称为升序序列(每一轮都有交换,无需交换时不用扫描),则称T为冒泡排序扫描数,例如:
First Round:
( 5 1 4 2 8 ) -> ( 1 5 4 2 8 ), Compares the first two elements, and swaps them.
( 1 5 4 2 8 ) -> ( 1 4 5 2 8 ), Swap since 5 > 4
( 1 4