考研系列-数据结构第八章:排序(下)

一、归并排序

1.算法思想

        基本思想是将一个数组分成两半,对这两半分别进行排序,然后将排序好的两半合并在一起。这个过程一直递归进行,直到划分的子数组只包含一个元素(此时认为该元素已经排序好),然后开始合并过程,直到合并为一个完整的、排序好的数组。

2.具体步骤

(1)分解

        将数组分解成两个较小的子数组,直到子数组的大小为1。

(2)递归进行排序并合并

        递归地对子数组进行排序,并将已排序的子数组合并成一个大的有序数组,直到合并为1个完整的数组。

(3)合并/归并

        合并两个已排序的数组段。在这个过程中,比较两个数组段的最前面的元素,选择较小的元素放入到新的数组中,然后移动指针到下一位置,继续比较,直到一个数组段的所有元素都被复制。如果某个数组段还有剩余的元素,则将它们直接复制到新数组的末尾。

        归并有二路、四路等等的多路归并。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值