
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
很久没有更新数据结构与算法的专题文章了,也很久没有好好刷算法题了,很惭愧。之前我们介绍过由递归到记忆化搜索再到动态规划的演进过程,从本文开始我们将见识一些常见的动态规划题目模型,在互联网大厂笔试面试出现的概率极高!今天我们来介绍“背包DP”这一模型,并结合leetcode的经典题目来进行真题讲解。常见的背包DP的类型有这三种,我们会依次结合场景对其进行介绍!此处声明,我的文章是我学习左程云老师算法

来尝试,这样就能够很好的表达状态。这种思想就是所谓的“

lambda内部递归调用dfs会报未定义。正确的做法是用function进行包装,

hit数组代表我们打砖块的位置。假设第一发炮弹打在(3,3)位置,那么(3,3)处位置的砖块会直接碎掉,而(4,3),(4,4)处的砖块因为失去了(3,3)处砖块的黏着,会掉落,所以此时掉落的砖块数为2。我承认这篇文章有点点标题党了哈~不过在我认为,洪水填充是二维网格图DFS的一种非常特殊的情况,不需要进行回溯,所以整个的情况是要简单不少的,那我们就来看看比较一般的情况是怎么回事。普通的洪水填充问

值得注意的是,这道题的图结构不是显式的。这道题目中控制BFS过程的关键在于判断所有橘子是否全部腐化,所以我们需要先统计一下新鲜橘子的数量,之后在BFS扩散“腐化”过程中不断去减小这个数量,当新鲜橘子的数量减为0时,BFS过程结束,如果最后新鲜的橘子无法减为0,说明不可能将所有橘子腐化,返回-1即可。题目给了我们一个二维网格图,在这个网格图中,0代表未放橘子的空格,1代表新鲜的橘子,2代表腐烂的橘子

无论是提示词工程还是上下文工程,它们的核心目标都是让人工智能“更好地理解人类的意图”。前者教会模型如何被指令驱动,后者让模型在合适的语境中思考。提示词是显性的沟通方式,而上下文是隐性的语义土壤——两者相辅相成,缺一不可。随着推理模型、智能体(AI Agent)和多模态系统的发展,提示词工程正在从“编写指令的技巧”转向“语境设计的系统工程”。未来,我们作为 AI 应用开发者,不仅需要会写出精准的 P

我们开门见山,先抛出一个问题:一开始我们的思路可能是通过for循环暴力在范围上进行修改,可是如果这样,假设左右区间分别为l,r,每次操作的时间复杂度是的线性水平,假设我们有m次操作,那么时间复杂度便是,数据量大了这是不可接受的。而接下来我们要引出的差分算法,可以把这种区间变化操作的时间复杂度降低到常数水平。这是一种“”的方式,无需遍历整个区间。在介绍差分算法之前,相信朋友们应该对这个概念并不陌生。

随着机器学习,深度学习算法的兴起,AI Agent开始从数据中总结概率规律。大语言模型的出现推动了AI Agent的重大变革,如GPT-3,DeepSeek等大参数模型具备了强大的自然语言处理和理解能力。大模型(LLM)是基于训练而成的,就像是一个“”,虽然具备强大的自然语言理解和生成能力,但是在面对垂直专业场景时,其精度难以适配。而一个真正能落地的AI应用,不仅是一个可以聊天的大语言模型,而是一

无论是提示词工程还是上下文工程,它们的核心目标都是让人工智能“更好地理解人类的意图”。前者教会模型如何被指令驱动,后者让模型在合适的语境中思考。提示词是显性的沟通方式,而上下文是隐性的语义土壤——两者相辅相成,缺一不可。随着推理模型、智能体(AI Agent)和多模态系统的发展,提示词工程正在从“编写指令的技巧”转向“语境设计的系统工程”。未来,我们作为 AI 应用开发者,不仅需要会写出精准的 P

随着机器学习,深度学习算法的兴起,AI Agent开始从数据中总结概率规律。大语言模型的出现推动了AI Agent的重大变革,如GPT-3,DeepSeek等大参数模型具备了强大的自然语言处理和理解能力。大模型(LLM)是基于训练而成的,就像是一个“”,虽然具备强大的自然语言理解和生成能力,但是在面对垂直专业场景时,其精度难以适配。而一个真正能落地的AI应用,不仅是一个可以聊天的大语言模型,而是一








