1.冒泡排序算法
冒泡排序是一种交换排序,基本思想是:两两比较相邻记录的关键字(元素的值),如果反序则交换位置,直到没有反序的记录为止。
假设待排序的关键字序列为{4,3,1,2,5,6},希望按照从小到大的顺序排列:
从后向前两两比较,将最小值放到最上面的位置
第一趟,i=0,6>5,不需要交换位置,5>2不需要交换,2>1,1<3,将1与3交换位置,{4,1,3,2,5,6},1<4,交换位置,{1,4,3,2,5,6}
第二趟,i=1,6>5 5>2 2<3 交换,{1,4,2,3,5,6} 2<4 交换{1,2,4,3,5,6}
算法描述:C++
时间复杂度 O(n^2),是稳定排序。