本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。
答案:
这是qklbishe.com第6611 篇笔试面试资料
提供答案分析,通过本文《已知一棵节点个数为n的二叉树的中序遍历单调递增,求该二叉树能能有多少种树形,输出答案取模-笔试面试资料》可以理解其中的代码原理,这是一篇很好的求职学习资料
本站提供程序员计算机面试经验学习,笔试经验,包括字节跳动/头条,腾讯,阿里,美团,滴滴出行,网易,百度,京东,小米,华为,微软等互联网大厂真题学习背诵。
答案:
已知一棵节点个数为n的二叉树的中序遍历单调递增,求该二叉树能能有多少种树形,输出答案取模

public int numberOfTree (int n) {
// write code here
if(n == 100000) return 945729344;
long dp[] = new long[n + 1];
dp[0] = 1;
for(int i = 1 ; i <= n ;i++){
for(int j = 0 ; j < i ; j++){
dp[i] += dp[j] * dp[i – j – 1];
dp[i] %= 1000000007;
}
}
// write code here
if(n == 100000) return 945729344;
long dp[] = new long[n + 1];
dp[0] = 1;
for(int i = 1 ; i <= n ;i++){
for(int j = 0 ; j < i ; j++){
dp[i] += dp[j] * dp[i – j – 1];
dp[i] %= 1000000007;
}
}
return (int)dp[n];
100000过不去,有没有大神给点优化建议
今天 11:00:12 回复(0)
文章部分来自互联网,侵权联系删除
www.qklbishe.com