- 博客(7)
- 收藏
- 关注
原创 算法 ||动态规划|| 背包dp
当容量接着增加时,在这个循环中背包中的物品的总价值不会再变化,直观上,可能会认为当容量增加时,我就可以把这个背包里现有的物品换成价值更大的。所以,相当于是去挑个新的,不去挑选已将被选中的那个。而一维数组的dp【j】就是直观上的理解,j每+1,背包的物品就会大洗牌一次,根据一维dp的状态转移方程 如果正序选择,存在选了又选的情况,而倒序则不会存在该问题。有 n个物品和一个容量为V的背包,每个物品有体积wi和价值vi两种属性,要求选若干物品放入背包使背包中物品的总价值最大且背包中物品的总重量不超过背包的容量。
2023-06-28 23:56:01 30 1
原创 第六天 钢琴++ stl。 deque与string
str.end() i++ 因为end.()是最后一个数的下一位。push_front() 插入 pop_back();遍历字符串方法 :string.length() 可以得到字符串长度 可以cout<<str[i];distance( m,it) m是指deque定义的容器的元素 it 是指迭代器 这个返回it到deque的距离 有正负。)开始 取size个长度 转移到字符串 buy中 注意不会转移结束符,buy长度不够 会产生越界。成员函数 copy(buy,size,begin)
2023-05-15 22:42:17 30 1
原创 第五天! 逆袭!vector
4、找出一组数中最大的 和第二大的 需要几次比较。将一组数分成两波,第一波中2 2 2 2 ....的分 再从决胜者中2 2 2 2 进行比较 第二波类似 直到找出第一波中最后俩 进行比较后决出胜负 第二波同理 将第一波的1vs第二波的1 再将另一波的2vs第一组败者。3、二维数组定义 a[m][n] 表示m行n列 或者 表示申请了m个集合 每个集合有n个元素 其中m可以省 n不可以省 即行数可以省 列不行。插入原则是 将(pos,n)中postion上的元素(包括该位置)往后移一位。
2023-05-14 23:29:17 25
原创 第四天!!! 无事发生
2、进军STL 早上看了看vector 明天深究。3、二维数组 必须定义行数组长度 列数组可以不定。1、目前c++基础还差个多态 明天看。买了钢琴 所以今天进度有点水。
2023-05-13 23:33:52 28
原创 第三天!!! 卡卡罗特拜访菩提老祖,更适合中国宝宝的龟仙人!
如果加上static const 就是只能在现在这个文件里用 如果在代码块中定义 正常定义生命周期就跟你定义的函数或者别的东西一样长 而用上static 他这个变量也会死 但是日后可以复活。假如现在用的文件跟别的文件里定义的变量名冲突了,编译器在用到你现在这个文件的时候会把其他文件的变量隐藏 等你这个变量死了 被冲突的变量才会发挥其作用 就跟慈溪跟光绪似的。则现在转变成了插空法。4、char申请内存 占1字节 不包括\n 字符串就不一样了 输入1个字符也占俩 自带那个符号 忘了叫啥了 不是换行符反正。
2023-05-12 21:52:53 44 1
原创 第二集!!!c++王者的进阶
目前感觉是用来查找数组元素用的算法。方法:要从n个单调的数中寻找一个数,先找中间的那个,与你所求的数进行比较,中间的数小于目标数,则说明目标数在右半区,再类推。n个数的数组下标应为n-1.则中间数的下标值为(0+n-1)/2 将目标数与中间值比较 假设 target 小于midnum 则右区间变成中间值的下标-1。对于 A 【a】【b】【c】A的数组元素个数为 ayx+bx+c a是下标 实际应该有a+1个深度 但第a+1个上数组元素未满。注意:存在n个数是奇是偶的问题,以及区间开闭的问题。
2023-05-11 17:54:15 26 2
原创 第一天!!!C++王者的诞生。
是告诉编译器你要引用什么了 让他预加载一下 这里include翻译为引用 是引用东西的意思。语法 里面放的是别的文件的名字,意思是你运行程序之前编译器会先过一遍中文件的内容 相当于把这个文件压缩到你的程序里。与第一行同理 using 也是英语单词 "使用" namespace顾名思义 名称空间 std是strandard的缩写 意思是要使用个名称空间 还没学到 一知半解。很纳闷 很抽象 #干啥用的 iostream是啥 还有那个一大串的using-是什么 令人困惑。
2023-05-10 20:11:33 20
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人