面试算法总结系列——和为K的算法

本文是关于面试中常见的和为K的算法题目的总结。讨论了连续和非连续数组中和为K的子数组问题,包括暴力解法、滑动窗口和前缀和等策略。还涉及到了二叉树路径和为K的解题思路,提供了一些LeetCode原题的链接和解题资源。
摘要由CSDN通过智能技术生成

前言

题外话:越来越感觉,刷算法其实不是为了面试了,而是学专业知识点快要学吐的时候,或者业务太烦的时候,缓解一下,换个思维。

这篇文章最开始的意图,是简单过一下几个面试中常见的算法题目,都不难。
但是后来慢慢发现,这个关于K的问题可以扩展的很难很难。楼主个人很喜欢总结,因为不总结就跟没做一样,所以,想把当前所有的和为K的题目总结在这里,方便随时回来翻阅。

1.直线上的和为K

1.1连续的和为K

1.1.1找到所有的和为k的子数组

从一串有序数组中找到和为K的连续子数组。比如[1,2,2,3,5,6,7,8,9],k=5,那么答案就是[1,2,2],[2,3],[5]

解法一:暴力

这个题目咋一看是没有任何思路的,只能暴力,两重for循环,这个代码贴一下

	private List<List<Integer>> caTsum(int[] num, int lev) {
   
        List<List<Integer>> list = new ArrayList<>();
        for (int i = 0; i < num.length
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值