关于Matrix归并排序的想法

作者纯属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[]中来


归并排序
思想:采用分治的方法,把要排序的数组分成两部分,我们的目的是要把分成的
两部份变得有序,所以我们采取的方法是把两部分继续分为两部份,直至只剩下一个数为止,
这是我们就认为数组是有序的,然后我们可以先两个数进行归并,然后是四个数,以此类推,

知道最后把左右两边的数组都合并位置,这样就变成了一个有序的数列


题目



对于有序数组的排序



排序实现



题目实现



猜你喜欢

转载自blog.csdn.net/Alva112358/article/details/53375286
今日推荐