多路归并
多路归并表示的是将多行数据根据题目要求合并成一行数据的过程。
多路归并的题目通性是:
1.最初根据题目条件我们都会绘制出一个矩阵,然后根据题目的解题条件我们发现就是要将这个矩阵中的子矩阵合并成一行数据。
2.多路归并都会用到“堆”这一数据结构辅助我们进行多路归并过程。
3.堆中的每一个元素通常有两个值,第一个值是要参与堆中排序的“元素价值”,第二个值是每一个元素在行中的位置,以此帮助寻找下一个元素。
4.堆顶元素a被取出放入归并序列之后,要将a在行中的位置的下一个元素信息放入堆中
经典题目
1.序列
原题链接: AcWing 146. 序列
题解: AcWing 146. 序列——多路归并
2.鱼塘钓鱼
原题链接: AcWing 1262. 鱼塘钓鱼
题解: AcWing 1262. 鱼塘钓鱼——多路归并