算法
文章平均质量分 80
自学过程中的算法笔记
陈奕迅本讯
一个破学java的
展开
-
算法-数组笔记
因为一旦有重复元素,使用二分查找法返回的元素下标可能不是唯一的,这些都是使用二分法的前提条件,当大家看到题目描述满足如上条件的时候,可要想一想是不是可以用二分法了。我们先做累加,即 p[i] 表示 下标 0 到 i 的 vec[i] 累加 之和。前缀和的思路其实很简单,我给大家举个例子很容易就懂了。例如,我们要统计 vec[i] 这个数组上的区间和。---长度,可以想到滑动窗口。统一左闭右开,遵循循环不变量。原创 2024-09-30 10:01:56 · 341 阅读 · 0 评论 -
动态规划笔记
如果把遍历nums(物品)放在外循环,遍历target的作为内循环的话,举一个例子:计算dp[4]的时候,结果集只有 {1,3} 这样的集合,不会有{3,1}这样的集合,因为nums遍历放在外层,3只能出现在1后面!2 第二层遍历,是顺序遍历不是倒叙遍历。递推公式,要站dp【i】的角度去想,想象dp【i】是由哪些前面的状态推倒而来的。和0-1背包模板区别:1 完全背包在两层遍历的时候,顺序没有要求。两次循环时,必须先循环遍历物品。遍历顺序以及循环顺序无要求。原创 2024-09-28 09:50:26 · 357 阅读 · 0 评论