归并和基数排列算法基本思想

基数排列算法

第一次排序 取个位数 第二次取十位数      它不需要比较关键字的大小,且和归并一样稳定

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个堆顶元素

                                先筛选后输出

你可能感兴趣的:(归并和基数排列算法基本思想)