数据结构与算法
rungo_liang
这个作者很懒,什么都没留下…
展开
-
背包问题总结
1.背包容量j的遍历顺序 此问题出现在物品数量是否有限的问题中。更新dp[j]时往往需要用到同一行上的数据dp[j-nums[i]],如果先遍历dp[j-nums[i]]则物品i有可能已经被装入了,然后遍历dp[j]时可能在dp[j-nums[i]]的装填方法上再装一个物品i,导致同一个物品i被使用两次。反之先遍历dp[j]后遍历dp[j-nums[i]]则可避免这种重复使用。 (1)01背包问题【Leecode题416、1049】 因为物品有限,需要考虑j的遍历顺序: 更新dp依赖同一行的数据时,从后往前原创 2021-10-19 19:34:18 · 151 阅读 · 0 评论 -
未知的原地归并算法?求大佬帮忙分析一下
在学归并算法时,思考原地归并的解法,结果写了这么个算法,不知道怎么分析它 #include <iostream> int exchange(int data[],int p1,int p2) { int temp = data[p1]; data[p1] = data[p2]; data[p2] = temp; } int main() { int a[20] = {1,11,16,29,34,57,69,77,81,92,3,6,18,25,33,46,47,59,61,99};原创 2021-01-19 20:47:57 · 84 阅读 · 1 评论