Day40| 343 整数拆分 96 不同的二叉搜索树

目录

[343 整数拆分](#343 整数拆分)

[96 不同的二叉搜索树](#96 不同的二叉搜索树)


343 整数拆分

cpp 复制代码
class Solution {
public:
    int integerBreak(int n) {
        vector<int> dp(n + 1);
        dp[2] = 1;

        for(int i = 3; i <= n; i++){
            for(int j = 1; j <= i / 2; j++){
                dp[i] = max(dp[i], max((i - j) * j, dp[i - j] * j));
            }
            cout << "dp[" << i << "] = " << dp[i] << endl;
        }
        return dp[n];
    }
};

96 不同的二叉搜索树

cpp 复制代码
class Solution {
public:
    int numTrees(int n) {
        //1 第 i 个数有dp[i]种不同的二叉树数量
        vector<int> dp(n + 1, 0);
        //2 初始化
        dp[0] = 1;
        dp[1] = 1;
        //3 数组遍历
        for(int i = 2; i <= n; i++){
            for(int j = 1; j <= i; j++){
                //4 递归方程
                dp[i] += dp[j - 1] * dp[i - j];
            }
        }
        return dp[n];
    }
};
相关推荐
被考核重击几秒前
基础算法学习
学习·算法
小O的算法实验室3 分钟前
2026年ASOC,学习驱动人工蜂群算法+移动机器人多目标路径规划,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
wfbcg17 分钟前
每日算法练习:LeetCode 30. 串联所有单词的子串 ✅
算法·leetcode·职场和发展
玉树临风ives22 分钟前
atcoder ABC 453 题解
数据结构·c++·算法·图论·atcoder
田梓燊27 分钟前
leetcode 48
算法·leetcode·职场和发展
mmz120731 分钟前
深度优先搜索DFS2(c++)
c++·算法·深度优先
米粒133 分钟前
力扣算法刷题 Day 38 (打家劫舍专题)
算法·leetcode·职场和发展
琪伦的工具库37 分钟前
批量PDF合并工具使用说明:批量合并与直接合并两种模式,拖拽排序/页面范围/遍历子目录/重名自动处理
数据结构·pdf·排序算法
Robot_Nav39 分钟前
RC-ESDF与Lazy Theta* 算法结合进行离线全局路径的生成
算法·全局规划·esdf
papership40 分钟前
【入门级-算法-7、搜索算法:深度优先搜索】
算法·深度优先