今天有学习到一种常见的算法思想,拉链,这个我在复习面试之前基本没怎么听说过。现在就来总结一下我的理解。
拉链算法中的拉链两个字和形象,就是把拉链中的齿,一个一个压上去,从而形成一条链。可以很明显的看出来,他适用于合并数组的这种情况。但是这个数组是有条件的:两个需要合并的数组必须是有序的。
letcode上面就有这么一道题:
给定两个大小为m和n的有序数组,请找出两个有序数组的中位数。
我看到了一位大神就是用的拉链算法解析的,他的运行速度超过了90%的提交者的答案,
原文如下:https://mp.weixin.qq.com/s/Xey_hhzEkeXSVwoQyxAoRw
很精妙的算法。
大家可以关注一下这个公众号,大神会不定期的更新算法题的解题思路