说起归并算法,我不说概念性的东西。举个例子就可以看出来了
原数列:6 202 100 301 38 8 1
第一次:{6 202 },{100 301},{8 38},{1} 比较3次 6和202 100和301 38和8
第二次:{6 100 202 301},{1 8 38} 比较4次 6和100 100和202 202和301 1和8
第三次:{1 6 8 38 100 202 301} 比较4次 1和6 6和8 8和100 38和100
则总共比较次数是 3+4+4=11次
如果序列是 1 6 8 38 100 202 301
第一次:{1 6},{8 38},{100 202},{301} 比较3次
第二次:{1 6 8 38},{100 202 301} 比较4次
第三次:{1 6 8 38 100 202 301} 比较4次
总共11次
如果序列是 301 202 100 38 8 6 1
第一次:{202 301},{38 100},{6 8},{1} 比较3次
第二次:{38 100 202 301},{1 6 8} 比较3次
第三次:{1 6 8 38 100 202 301} 比较3次
总共是9次
则可以说明归并排序的比较次数和序列的初始顺序有关