如何解决缺少特定算法思维的问题?

一般来说,面对一道算法题,首先我们先需要对题目进行拆解,寻找到解题思路。

针对这道题,一开始可能想到的解决办法是直接用暴力法。即尝试所有可能的连续子序列,计算它们的和,然后找到最大的和;这是最简单也是最直接的思路。但暴力法存在一个很大的问题,就是它的时间复杂度较高,为 O(n²) ,很明显这不是最有效解决方法!它也不是题目考察的重点,题目真正想考察的是动态规划,是一种很常见的算法思维模型。此时又产生了新的疑问,怎么知道它考的是动态规划这个算法思维模型呢?这就跟下面这个问题有关。

如何解决无法完全理解题目的问题?

前文中提到此题是考察动态规划的,但又是如何分辨出此题是考察动态规划的呢?其实,这跟对题目的理解程度有关,需要学会在题面中寻找关键信息。

首先,注意题目里这句话:

其次,注意题目给出的三个示例:

以上两点都在暗示此题是涉及多个重叠的子问题以及寻找最优子结构的情况。而这两点正是动态规划最明显的两个特征和模式。

相关推荐
INGNIGHT18 分钟前
440 · 背包问题(三)(无限次数)
算法·leetcode·动态规划
suhan19 分钟前
【数据结构】七、查找:1.查找的概念、线性结构查找(顺序、折半(二分)、插值、稠密、分块、倒排)
数据结构·算法·排序算法
killerbasd1 小时前
总结 10.26
算法
深圳安锐科技有限公司1 小时前
从成像尺度到亚像素解算:变焦视觉位移监测如何让远近断面都稳
图像处理·人工智能·深度学习·算法·计算机视觉·系统架构·结构健康监测
一只旭宝2 小时前
回调函数(Callback)
linux·服务器·算法
秋名RG2 小时前
算法的划分
算法
Tisfy2 小时前
LeetCode 3619.总价值可以被 K 整除的岛屿数目:广度优先搜索BFS
算法·leetcode·bfs·宽度优先
地平线开发者2 小时前
【大模型】EAGLE 与 EAGLE-3:用“特征预测“加速投机解码
算法
lengxuenong3 小时前
区间覆盖问题 · 简明学习手册1
java·学习·算法
明志数科3 小时前
人类视频与机器人示教的数据配比:分层训练的数据采购与采集设计
人工智能·算法