120. Triangle

从倒数第二行找,然后逐个遍历这个DP数组,对于每个数字,和它之后的元素比较选择较小的再加上面一行相邻位置的元素做为新的元素,然后一层一层的向上扫描

class Solution {
public int minimumTotal(List<List<Integer>> triangle) {
if(triangle.size() == 0 || triangle == null) return 0;
int rows = triangle.size();
int[] dp = new int[rows + 1];
for(int i = rows - 1; i >= 0 ; i--){
for(int j = 0; j <= i; j++){
dp[j] = Math.min(dp[j], dp[j + 1]) + triangle.get(i).get(j);
}
}
return dp[0];
}
}

279. Perfect Squares

class Solution {
public int numSquares(int n) {
int[] dp = new int[n + 1];
Arrays.fill(dp, Integer.MAX_VALUE);
dp[0] = 0;
for(int i = 1; i <= n; i++){
for(int j = 1; j * j <= i; j++){
dp[i] = Math.min(dp[i], dp[i - j * j] + 1);
}
}
return dp[n];
}
}

最新文章

  1. 【原】iOS动态性(四):一行代码实现iOS序列化与反序列化(runtime)
  2. 关于Java中null的十点详解
  3. MTK 常见的编译命令
  4. 2.servlet的会话机制session
  5. RabbitMQ 安装
  6. js 中 typeof 的使用
  7. CSLA的项目结构(一)
  8. WPF 渐隐渐现切换背景图片
  9. VS2013 MVC Web项目使用内置的IISExpress支持局域网内部机器(手机、PC)访问、调试
  10. VC提交网页表单(一共八篇)
  11. Psychos in a Line
  12. centos7/redhat7 将网卡名字改成eth样式的方法
  13. Windows下与Linux下编写socket程序的区别 《转载》
  14. Block formatting context
  15. hdu 2188 选拔志愿者(sg博弈)
  16. Ubuntu下安装Anaconda和tensorflow
  17. 移动端Web资源整合
  18. [LeetCode] Asteroid Collision 行星碰撞
  19. Leetcode_67_Add Binary
  20. wtf!rds数据同步居然出问题了--菜鸟db的数据修复历程

热门文章

  1. vue使用技巧
  2. MySQL中的存储过程、函数与触发器
  3. 有状态 Vs 无状态
  4. 也作一下装配脑袋的Expression习题【转】
  5. WPF 隐藏式控件
  6. C++回调,函数指针
  7. Log4基本配置
  8. Python - 正则表达式2 - 第二十三天
  9. Java生鲜电商平台-一次代码重构的实战案例
  10. Flask--数据库连接池