刷题
www_z_dd
这个作者很懒,什么都没留下…
展开
-
C++力扣712. 两个字符串的最小ASCII删除和 Minimum ASCII Delete Sum for Two Strings
https://leetcode-cn.com/problems/minimum-ascii-delete-sum-for-two-strings/原创 2021-12-04 17:05:27 · 517 阅读 · 0 评论 -
C++实现力扣198. 打家劫舍
house robber跟基础的动态规划问题的区别是,不能选择相邻的。如下图,建立方程,用一个opt数组保存就可以。需要考虑一下数组很小的边界条件。//// Created by dd on 2021/12/3.//#include<bits/stdc++.h> //万能头文件,包含了目前C++所包含的所有头文件using namespace std;int main() { vector<int> cost = {1, 2, 3, 1}; int原创 2021-12-04 15:37:12 · 765 阅读 · 0 评论 -
C++实现746. 使用最小花费爬楼梯
核心思路是选还是不选。opt( i ) 表示到第i个台阶的最小花费,如果是【10, 15, 20】这个题目给出的台阶是0,1,2,求得就是opt( 3 )到达第三个台阶的最小花费。就像斐波拉契数列的计算,opt(3)需要用到opt(2) opt(1) 但是有一个选还是不选的问题上到第三个台阶可以从第二个上,也可以从第一个上,选择最小值选第二个台阶: opt(3) = 第二个台阶的花费+上到第二个台阶的花费不选第二个台阶: opt(3) = 第一个台阶的花费 + 上到第一个台阶的花费递归都是有出口原创 2021-12-03 21:35:48 · 350 阅读 · 0 评论 -
C++ 实现 力扣1039. 多边形三角剖分的最低得分
力扣1039. 多边形三角剖分的最低得分动态规划问题建立动态规划方程的过程:opt( l, r ) 表示从顶点i到j的最优(最低)分数ij距离为1时分数是0(这里一直没搞清楚所以方程一直建不起来)然后就是普通的动态规划的思路了比如opt(0,3)分解为以下两个式子最小值opt(0,1) +opt(1,3)+weight(013)opt(0,2) +opt(2,3)+weight(023)也就是K遍历每一个[l+1, r) 的最小值//凸多边形最优三角剖分#include<b原创 2021-12-03 18:22:49 · 714 阅读 · 0 评论 -
遍历二叉树的三种方法的六种实现
遍历二叉树的三种方法的六种实现有详细(相对)的注释文章目录遍历二叉树的三种方法的六种实现(1)先序(2)中序(3)后序(4)一种不同的迭代 层次遍历(1)先序力扣144.二叉树的前序遍历https://leetcode-cn.com/problems/binary-tree-preorder-traversal/递归:class Solution{public: void dfs(TreeNode *root, vector<int> &vec) {原创 2021-10-29 21:37:32 · 3533 阅读 · 0 评论