Leetcode
Rodge0
冲!
展开
-
96. 不同的二叉搜索树
class Solution { public: // 设G(n) 表示从[1,n]所有的二叉搜索树个数,F(i,n)表示i为根节点,从[1,n]有多少个二叉搜索树 // G(n) = sum(F(i,n)) i∈[1,n] // 由于[1,n]是不重复的数字,所有左右子树不存在重复的可能性 // 所以F(i,n) = G(i-1)·G(n-i) 组左右子树集合的笛卡尔积 // 那么,可以推导出,G(n)依赖于G(0)...G(n-1),所以只需要从小到大计算G函数即可 int numTr...原创 2020-08-24 20:13:05 · 122 阅读 · 0 评论 -
13. 罗马数字转整数
简单题目,字符串处理,用了switch-case处理的,为了防止越界问题,for循环的i从1开始,switch从i-1开始判断,这样判断i-1和i位是否是一个整数就不会越界了。最后再判断最后两位是否是一个整数,如果是,在for循环里面就处理了,不是的话,再相加。 用了三个switch-case,代码很长,其实可以使用字典,不用判断直接进行相加。 看了其他人的题解 一、利用罗马数字的特性,如果...原创 2019-10-10 22:15:13 · 93 阅读 · 0 评论