八大排序算法
、
1、冒泡排序:
思想:数组中相邻两数进行比较,大的往后排
细节:(1)一趟排序能够确定数组最后一个位置上的数
(2) 如果一趟结束,没有发生元素交换,那说明数组已经有序,无需继续,所以每遍历外层循环一次,就把boolean类型变为false,如果发生交换变为true,这样做可以优化代码
(3)代码的话一定要会确定两层for循环的次数 ,这个非常重要!

2、直接选择排序
思想:从1-n中找出最小的与第一个位置交换,然后再从2-n中找出最小的与第一个位置交换
细节:确定for循环的次数,第一个for循环只需要遍历n-1次,第二个for循环遍历次数与第一次有关系
数组位置交换要注意 如图代码,min一定是标记的数组坐标,而不是数组中的值,否则就会出现问题


3:
思路:每次将待插数插入到一个有序数组中
代码细节:待插数a[ i ], 向前遍历查找:如果a比他大,就将a往后移动,如果b比他小,就插入在b下一个位置;
容易忽略的点:将要插入的数得保存起来 temp;不然 j 移动的时候会覆盖掉


浙公网安备 33010602011771号