Java教程

算法思路汇总

本文主要是介绍算法思路汇总,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

记录一些本人在leetcode上见到的题型已经相应思路。

 

一 滑动窗口类型:

这些题型基本以数组或字符串形式出现,得出的答案都是直接或者间接和给出数组或字符串的子串相关。在解这类题型时,使用滑动窗口的思路,在将窗口从左滑到右的过程中,得到解

解体步骤:

1.初始化窗口。需要一开始先找到符合条件的窗口,这时窗口的左边界下标保持为0,只移动右边界下标,得到满足条件的第一个下标值。在处理过程中,可以将处理右边界下标的某些情况抽出成函数,后续可以敷用。

2.移动窗口到最右边。需要想清楚什么时候移动左边界下标和右边界下标,在移到最后时即可返回答案。

难点:在于移动窗口时,有时条件没处理好,会导致得到错误答案,调试又会占去很多时间。

leetcode例题:

  • 76.最小覆盖子串
  • 209.长度最小的子数组
  • 904.水果成篮

 

 

后续会持续不断地更新。

这篇关于算法思路汇总的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!