作者纯属C语言新手,考试挂科....这是参考了一些资料给出的提示和思考
预备知识:讲两个有序的序列合并成一个序列
1.已知两个有序的序列a[n],b[m],并且设置一个空的数组c[];2.设置3个index{i,j,k}={0}
比较数列a[i],b[j]的大小,如果a[i]>b[j],a[i++]=c[k++],否则b[j++]=c[k++]
如果有数组为空,则把剩余的数加到数组c[]中来
归并排序
思想:采用分治的方法,把要排序的数组分成两部分,我们的目的是要把分成的
两部份变得有序,所以我们采取的方法是把两部分继续分为两部份,直至只剩下一个数为止,
这是我们就认为数组是有序的,然后我们可以先两个数进行归并,然后是四个数,以此类推,
知道最后把左右两边的数组都合并位置,这样就变成了一个有序的数列
题目
对于有序数组的排序
排序实现
题目实现