【代码随想录】day41

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


一、343整数拆分

cpp 复制代码
class Solution {
public:
    int integerBreak(int n) {
        vector<int> dp(n + 1, 1);
        for (int i = 2; i < n + 1; i ++) {
            for (int j = 1; j <= i / 2; j ++) {
                int num1 = max(j, dp[j]);
                int num2 = max(i - j, dp[i-j]);
                dp[i] = max(num1 * num2, dp[i]);
            }
        }
        return dp[n];
    }
};

二、96不同的二叉搜索树

cpp 复制代码
class Solution {
public:
    int numTrees(int n) {
        vector<int> dp(n + 1, 1);
        for (int i = 2; i <= n; i ++) {
            //j为根结点的值
            int count = 0;
            for (int j = i; j > 0; j --) {
                int left = j - 1;
                int right = i - j;
                count += dp[left] * dp[right];
            }
            dp[i] = count;
        }
        return dp[n];
    }
};

相关推荐
坚持就完事了14 小时前
滑动窗口算法
数据结构
wuqingshun31415914 小时前
蓝桥杯 缺页异常2【算法赛】
算法·职场和发展·蓝桥杯
Mh_ithrha14 小时前
题目:小鱼比可爱(java)
java·开发语言·算法
l1t14 小时前
数独优化求解C库tdoku-lib的使用
c语言·开发语言·python·算法·数独
有一个好名字14 小时前
力扣-奇偶链表
算法·leetcode·链表
wxm63114 小时前
力扣算法题(C++):1、2
java·算法·leetcode
im_AMBER14 小时前
Leetcode 103 反转链表 II
数据结构·c++·笔记·学习·算法·leetcode
rgeshfgreh14 小时前
回溯算法精解:排列、子集与组合
python·算法·深度优先
Ka1Yan15 小时前
[链表] - 代码随想录 24. 两两交换链表中的节点
数据结构·链表
rit843249915 小时前
有限元算法求解铁木辛柯梁梁静力问题实例
算法