198.House Robber (求非相邻正整数的和最大值)
2015-07-29 11:14
337 查看
You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent houses have security system connected and it
will automatically contact the police if two adjacent houses were broken into on the same night.
Given a list of non-negative integers representing the amount of money of each house, determine the maximum amount of money you can rob tonight without alerting the police.
思路:新建一个数组temp[i],长度为n-1; temp[i]表示第i个数之前的最大值,取temp[i-1]与nums[i]+temp[i-2]的较大值
temp[i] = Math.max(temp[i-1],nums[i]+temp[i-2]);
代码:
public class Solution {
public int rob(int[] nums) {
int result =0 ;
if(nums.length==1) result = nums[0] ;
if(nums.length==2) result = Math.max(nums[0], nums[1]);
if(nums.length>2){
int [] temp = new int[nums.length];
temp[0] = nums[0] ;
temp[1] = Math.max(nums[0], nums[1]);
for(int i=2;i<nums.length;i++){
temp[i] = Math.max(temp[i-1],nums[i]+temp[i-2]);
}
result = temp[nums.length-1];
}
return result;
}
}
will automatically contact the police if two adjacent houses were broken into on the same night.
Given a list of non-negative integers representing the amount of money of each house, determine the maximum amount of money you can rob tonight without alerting the police.
思路:新建一个数组temp[i],长度为n-1; temp[i]表示第i个数之前的最大值,取temp[i-1]与nums[i]+temp[i-2]的较大值
temp[i] = Math.max(temp[i-1],nums[i]+temp[i-2]);
代码:
public class Solution {
public int rob(int[] nums) {
int result =0 ;
if(nums.length==1) result = nums[0] ;
if(nums.length==2) result = Math.max(nums[0], nums[1]);
if(nums.length>2){
int [] temp = new int[nums.length];
temp[0] = nums[0] ;
temp[1] = Math.max(nums[0], nums[1]);
for(int i=2;i<nums.length;i++){
temp[i] = Math.max(temp[i-1],nums[i]+temp[i-2]);
}
result = temp[nums.length-1];
}
return result;
}
}
相关文章推荐
- "由于应用程序配置不正确,应用程序未能启动" VS2008 Release /MD编译
- 临江仙—杨慎
- 【HDOJ 2063】过山车
- Java 内存区域和GC机制
- 常用js操作:
- PHP操作Oracle数据库
- iOS各版本图标尺寸汇总
- 调整UI颜色时注意事项
- 阿里面试题---------关于html标签中物理标记和逻辑标记区别
- Mybatis 批量操作
- 【Python】获得Python程序所在的路径
- windows下安装redis
- Windows下编译Caffe并编译Matlab接口
- 关于注册密码md5加密
- 欢迎使用CSDN-markdown编辑器
- PHP实现简单实用的验证码类
- 博友话题:Windows 10强势来袭,你准备好了吗?
- 贪心加二分搜索之疯牛问题
- 前端断点测试
- 数组与字符串长度sizeof()、strlen()、string的length()和size()