摘要: 本来打算BAT全部面试完再写下心得,但是奈何阿里还要一个多月才能笔试,所以先记录一下这次的旅行。 腾讯和百度的面试完全都在我的预料之外,因为我之前投了网易的游戏,平时也很爱玩游戏,后来又收到网易的短信叫我参加沙龙,想着不出一个星期肯定会有电话面试了,所以几个星期一直都在准备网易游戏的面试。没想到等了 阅读全文
posted @ 2017-03-29 13:28 Initial_Dream 阅读(478) 评论(0) 推荐(0)
摘要: C++与Java中继承与多态是十分重要的特性,但在学习中发现并没有一篇将这两者做比较与总结,所以写下自己观点,本文中有自己的原创,也有引用网上经典的分析与例子,引用部分会说明并贴出链接。不足之处希望大家指正。 首先说一下Java与C++继承的不相同特性,也是最容易让人混淆的三个概念:重载,重写,重定 阅读全文
posted @ 2017-03-10 21:25 Initial_Dream 阅读(813) 评论(0) 推荐(0)
摘要: 假设最大子串为[i…k],那么其前缀之和sum[i…j](jsum[i…k],这与假设相反。得到这一结论,我们就可以设置一个临时变量用来计算前k个输之和,若为负,则将其置为0,否则判断其是否比当前最大值大。当k=n时,就找到了最大子串。class Solution {public: int maxS... 阅读全文
posted @ 2016-12-17 09:20 Initial_Dream 阅读(146) 评论(0) 推荐(0)
摘要: 这道题很容易得出递推关系了,因为每个数只能由其上一层相邻的左右两个数走到,所以dp[i][k]=min(dp[i-1][k],dp[i-1][k+1])+triangle[i][k],由于我们只关心最小的数,所以其实可以直接用原来的数组存放中间值,到了最后一层中到达每个数的最小值的最小就是所求结... 阅读全文
posted @ 2016-12-17 09:19 Initial_Dream 阅读(122) 评论(0) 推荐(0)
摘要: 典型的背包问题,假设小于n的完全平方数为Si,那么dp[n]=min(dp[n-S1],dp[n-S2],…dp[n-Si])+1class Solution {public: int numSquares(int n) { vectordp(n + 1, INT_MAX); dp[0]=0; ... 阅读全文
posted @ 2016-12-17 09:17 Initial_Dream 阅读(179) 评论(0) 推荐(0)
摘要: 首先BST的定义为左子树每个结点小于根结点,右子树每个结点大于根节点。假设序列为[1…n],最大BST为dp[n],那么我们知道所有的BST为以每个数k(1dp(n + 1, 0); dp[0] = dp[1] = 1; for (int i = 2; i < n + 1;++i) for... 阅读全文
posted @ 2016-12-17 09:15 Initial_Dream 阅读(114) 评论(0) 推荐(0)
摘要: 很标准的动态规划,容易得到递推公式dp(i)=dp(i-num[0])+dp(i-num[1])+......dp(i-num[n])。 也就是最后一个数字可以是数组中的任何一个小于target的数字,然后把所有的加起来 比如例子{1,2,3,4},则dp(4)=dp(0)+dp(1)+... 阅读全文
posted @ 2016-11-22 19:45 Initial_Dream 阅读(141) 评论(0) 推荐(0)
摘要: 这道题直接依次比较字符就行了,相等就移动,如果s先移完,那说明是子串,如果t先移完,说明不是 class Solution {public: bool isSubsequence(string s, string t) { if (s.size() == 0) return 1; if... 阅读全文
posted @ 2016-11-22 19:01 Initial_Dream 阅读(131) 评论(0) 推荐(0)
摘要: 起初发现这道题很像子串问题,我们只需要求出每个连续的Slices的长度,然后计算每个连续Slices的子串个数即可。假设某个连续的串长度为N,那么它所包含的子串个数为(N-1)*(N-2)/2,很简单的数学问题 class Solution { public: int numberOfArith... 阅读全文
posted @ 2016-11-22 18:31 Initial_Dream 阅读(121) 评论(0) 推荐(0)
摘要: 动态规划,小偷有两种选择: 1.偷最后一个房子,则倒数第二个房子不能再偷 2.不偷最后一个房子 所以问题可以简化为r[i]=max{r[i-1],r[i-2]+i} 1 class Solution { 2 public: 3 int rob(vector<int>& nums) { 4 int n 阅读全文
posted @ 2016-11-21 19:28 Initial_Dream 阅读(117) 评论(0) 推荐(0)