【easy】198. House Robber 123总结……

题目一:

一个极其简单的动态规划。

class Solution {
public:
    int rob(vector<int>& nums) {
        int best0 = 0;   // 表示没有选择当前houses  
        int best1 = 0;   // 表示选择了当前houses  
        for(int i = 0; i < nums.size(); i++){  
            int temp = best0;  
            best0 = max(best0, best1); // 没有选择当前houses,那么它等于上次选择了或没选择的最大值  
            best1 = temp + nums[i];    // 选择了当前houses,值只能等于上次没选择的+当前houses的money  
        }  
        return max(best0, best1);  
    }
};

 参考一个很好的blog:http://www.cnblogs.com/grandyang/p/4383632.html

题目二:形成环

参考一个很好的blog:https://www.cnblogs.com/grandyang/p/4518674.html

题目三:沿着二叉树偷的…一种看起来很厉害的偷法

参考一个很好的blog:http://www.cnblogs.com/grandyang/p/5275096.html

原文地址:https://www.cnblogs.com/sherry-yang/p/8453637.html