排序算法总结
各种排序算法的图解及思想
1.冒泡排序
1.图解:
2.也就是说如果前一个与后一个逆序则交换,
2.选择排序
1.图解
2.从未经排序的元素中选择出需要的最大数或者最小数放到a[0]位置,再是a[1]…
3.插入排序
1.图解
2.第一个元素直接插入,从第二个元素开始,需要插入的元素与已经插入的元素比较,找到一个合适的位置插入,
4.希尔排序
1.图解
5.归并排序
1.图解2.采用分治法,将子序列排序,最后合并排序
6.快速排序
1.图解2.选择第一个数或者其他数作为基准数,将剩余元素与基准数比较,小的放左边部分,大的放右边部分,再在左右两遍部分中各选出一个基准数,继续比较,直到每个左右部分子序列都只有一个数为止。
7.基数排序
1.图解2. 先按照个位对所有数值分类,个位相同的放一个桶中,再循环遍历每个桶中的数据取出放到原来的数组中,接下来将刚刚获得的新数组继续按照十位分类…