2.22
9—11:30
看Java入门书和视频
笔记:
15:00—17:00
直播学习
dp:
(1)01背包:每一种只有一个;
(2)完全背包:每一种都有无限个,代码与01背包只有一句的区别
01背包
for(i=1;i<=n;i++)
for(j=v;j>=c[i];j--)//在这里背包放入物品后,容量不断减少,直到满
dp[i][j]=max(dp[i-1][j],dp[i-1][j-c[i]]+w[i]);
而完全背包的第二句相反。
(3)多重背包:每件物品数量有限,转化为01背包,为了降低时间复杂度 ,用二进制思想,把i种物品分为若干件。假设i有10件
可使第i种物品可取0到10任意件——均能等价于取若干件代换以后的物品。
(4)混合背包:就是以上三种背包的混合。
19:30—22:00
学习数据结构与算法
写博客
https://blog.csdn.net/huyidai/article/details/104446076
心得:Java的面向对象的特性之一封装,是隐藏操作过程,只需调用它,然后它会给你结果。
而C语言的面向过程则是写明详细的操作过程。