1、简单排序算法
1.冒泡排序算法
基本思想:①每次比较相邻的两个元素。②将小的放在前面,大的放在后面。
例子:a[4]=4、2、3、1;
第一轮:2、3、1、4
第二轮:2、1、3、4
第三轮:1、2、3、4
两两排序让最大值放在最后。
代码思路
①实现第一轮的两两比较
②在①的基础上外循环①的比较,需要比较三轮
最后另外用for循环输出值即可。
2.插入排序算法
基本思想:拿后面的一个和前面的一个个作比较。2和1比,3和1、2比;小就插入,大就不变。
例子:a[4]={4,2,3,1};
第一轮:2、4、3、1;
第二轮:2、3、4、1;
第三轮:1、2、3、4;
代码思路:
① 后面的一个元素对前面的n个数元素进行一个个比较。所以元素越靠后,比较的次数越多。
即内循环比较次数要根据外循环而增加
3.选择排序算法
基本思想:在数列中,选择最小的移到第一个,然后再选择第二小 放在第二个……依次排序。
例子:a[4]={3,7,6,1};
第一轮:1、7、6、3;
第二轮:1、3、6、7;
第三轮:1、3、6、7;
代码思路
①用循环让第一个元素对后面的依次比较,找出最小的元素位置。
记录最小元素的位置和第一个交换。
然后外循环按步骤进行后面排序。
4.简单排序算法的复杂性
以上最坏情况需要O(n2)时间。