带你从 0->1 学习双指针算法
为啥要用双指针?
先试想一下,如果用 BF 来解题
复制代码
时间复杂度为 O(n^2),没有进行优化,如果数列为单调,(sort 后必然单调)可以使用双指针优化,所以核心思想:将 BF 算法 O(n^2)=>双指针 O(n)在我理解,只要是这种的优化都可以称之为双指针算法
模板实现
复制代码
题目:最长不连续子序列
BF 算法:
复制代码
双指针算法:
复制代码
先写 bf 算法,然后通过 i,j 之间的单调关系来优化,从而写出双指针算法
复制代码
版权声明: 本文为 InfoQ 作者【秋名山码民】的原创文章。
原文链接:【http://xie.infoq.cn/article/23ec121355141674a2829c5b0】。
本文遵守【CC BY-NC】协议,转载请保留原文出处及本版权声明。
评论