早上和面试官聊天, 才发现自己的基础下降的有点厉害, 过去那个飘逸写程序的小青年, 如今有点走下坡路了。
可惜我不服,所以要开始做题,把水平恢复上来,能力是最重要的。
最近在做LeetCodeOJ的题,一般般难度,每道题都不需要查资料就可以做出来,感觉还不错,很像面试题的样子。
当然,最好还是做一些ACM OJ的题吧。
题目: Unique Binary Search Trees
讲的是如何判断N节点二叉搜索树最大个数,其实认真想想就知道,只是一个最大子树的题,忘了,重新用笔画推导,应该是 F(n) = ( F(i)*F(n-i-1) for i = 0; i<n; ++i)。
另外,早上面试官聊天,提到我居然都忘记了switch的用法,简直菜成狗,必须用一用。
class Solution { public: int numTrees(int n) { switch (n) { case 0: return 1; case 1: return 1; case 2: return 2; default: int ret = 0; for (int i = 0; i<n; ++i) { ret += (numTrees(i)*numTrees(n-1-i)); } return ret; } } };
很简单的题,庆祝一下我回来了。 另外cnblogs 对 Wordpress 的兼容挺好的,不过代码样式还是有点花,调整了一下,换成cnblog自带的插件,嗯,好一些了。
2014年3月1日 Start && Unique Binary Search Trees,布布扣,bubuko.com
2014年3月1日 Start && Unique Binary Search Trees
原文:http://www.cnblogs.com/seenthewind/p/3575792.html