归并和基数排列算法基本思想
基数排列算法
第一次排序 取个位数 第二次取十位数 它不需要比较关键字的大小,且和归并一样稳定。
1 12 1 12
2 22 2 22 23 24 25
3 23 43 3 38
4 24 4 43 45 49
5 25 45 5
6 6
7 7
8 38 8
9 49 9
排序结束:12,22,23,24,25,38,43,45,49
归并排序基本思想 根据某一种方法 拆分。最后排列 归并很稳定
第一次拆分 1 3 0 2 4 8 6 9
第二次拆分 {1 3 } {0 2} {4 8} {6 9}
第三次拆分 {0 1 2 3} {6 4 8 9}
0123 4689
堆排序
不稳定的排序,大顶堆:每个结点的值都大于或等于其左右孩子结点的值,称为大根堆 小根堆相反
36857 最后一个节点的父节点
3
6 8 换5
5 7
3
5 8
6 7 阶段1,筛选成堆 阶段2输出堆,每次和叶子节点换,输出1个堆顶元素
先筛选后输出
浙公网安备 33010602011771号