数据结构以及算法
文章平均质量分 83
有关算法刷题的知识点
manfulshark
这个作者很懒,什么都没留下…
展开
-
动态规划--经典01背包问题
尝试用dp[i][j]来表示一个子问题,即选择[0 -- i-1]中能否通过选择几个元素使得他们的和为j,这样dp[len][target]就会是所有元素中选择几个元素是否能使得他们的和变为target(数组和的一半)考虑当前元素是否选择,若选择,则代表dp[i-1][j - num[i]]会是true(即前面的选择中能够使和为j-num[i] 再选上当前元素即可 和变为j)V = 4时,由于B重量为4 不可以选取,由于此时A也可以选,B也可以选,则比较两者价值,发现B更大,则选B。原创 2024-07-06 21:06:12 · 679 阅读 · 0 评论 -
单调栈--leetcode 84 柱状图中最大的矩形
单调栈指的是存储一些数据到栈中,同时这些数据满足单调递增或是单调递减显然是有四种情况的:1:向左找第一个比自身大的数。2:向左找第一个比自身小的数。3:向右找第一个比自身大的数。4:向右找第一个比自身小的数。原创 2024-06-11 21:12:19 · 1329 阅读 · 0 评论 -
经典排序----堆排序详细图解
堆排序是基于大根堆或小根堆的排序,公司面试的高频考点原创 2024-06-27 00:54:12 · 513 阅读 · 0 评论