LeetCod 339.Nested List Weight Sum
来源:互联网 发布:如何在php中定义常量 编辑:程序博客网 时间:2024/06/05 22:55
Given a nested list of integers, return the sum of all integers in the list weighted by their depth. Each element is either an integer, or a list -- whose elements may also be integers or other lists.
Example
Given the list [[1,1],2,[1,1]]
, return 10
. (four 1's at depth 2, one 2 at depth 1, 4 * 1 * 2 + 1 * 2 * 1 = 10)
Given the list [1,[4,[6]]]
, return 27
. (one 1 at depth 1, one 4 at depth 2, and one 6 at depth 3; 1 + 42 + 63 = 27)
解题思路:使用递归的方式将数据展开,然后分别于深度相乘
java
/** * // This is the interface that allows for creating nested lists. * // You should not implement it, or speculate about its implementation * public interface NestedInteger { * * // @return true if this NestedInteger holds a single integer, * // rather than a nested list. * public boolean isInteger(); * * // @return the single integer that this NestedInteger holds, * // if it holds a single integer * // Return null if this NestedInteger holds a nested list * public Integer getInteger(); * * // @return the nested list that this NestedInteger holds, * // if it holds a nested list * // Return null if this NestedInteger holds a single integer * public List<NestedInteger> getList(); * } */public class Solution { public int depthSum(List<NestedInteger> nestedList) { // Write your code here if (nestedList == null || nestedList.size() == 0) { return 0; } return util(nestedList, 1); } private int util(List<NestedInteger> nestedList, int deepth) { if (nestedList == null || nestedList.size() == 0) { return 0; } int sum = 0; for (int i = 0; i < nestedList.size(); i++) { if (nestedList.get(i).isInteger()) { sum += nestedList.get(i).getInteger() * deepth; } else { sum += util(nestedList.get(i).getList(), deepth + 1); } } return sum; }}
阅读全文
0 0
- LeetCod 339.Nested List Weight Sum
- 339. Nested List Weight Sum
- 339. Nested List Weight Sum
- 339. Nested List Weight Sum
- Nested List Weight Sum
- Nested List Weight Sum
- Leetcode Everyday: 339. Nested List Weight Sum
- LeetCode 339. Nested List Weight Sum
- leetcode 339.Nested List Weight Sum
- Leetcode 339. Nested List Weight Sum & 364. Nested List Weight Sum II
- Leetcode Nested List Weight Sum
- Nested List Weight Sum II
- Nested List Weight Sum II
- Leetcode: Nested List Weight Sum
- [leetcode] 339. Nested List Weight Sum 解题报告
- LeetCode 339. Nested List Weight Sum(加权和)
- [Leetcode] 339. Nested List Weight Sum 解题报告
- LeetCode 364. Nested List Weight Sum II
- 混淆打包Bug
- WEB前端 -- 关系选择器、属性选择器
- Nginx——2
- 双端链表
- oracle查询锁表与解锁
- LeetCod 339.Nested List Weight Sum
- react-native之上拉加载,下拉刷新组件封装
- 重写Spring MVC WEB 简单入门-登录例子
- 常用 工具 类
- 欢迎使用CSDN-markdown编辑器
- c语言输出类型
- 淘宝“避冬锦囊”中存在的安全隐患
- Unity基础,Line Renderer 和射线的应用
- IDEA中Git的使用