给定一个嵌套的整数列表,请返回该列表按深度加权后所有整数的总和。

每个元素要么是整数,要么是列表。同时,列表中元素同样也可以是整数或者是另一个列表。

示例 1:

输入: [[1,1],2,[1,1]]
输出: 10 
解释: 因为列表中有四个深度为 2 的 1 ,和一个深度为 1 的 2。
示例 2:

输入: [1,[4,[6]]]
输出: 27 
解释: 一个深度为 1 的 1,一个深度为 2 的 4,一个深度为 3 的 6。所以,1 + 4*2 + 6*3 = 27。

思路:其实时间主要浪费在读题上了,不知道这个NestedInteger怎么用,是个啥东西。

就是最简单的搜索。

/*** // This is the interface that allows for creating nested lists.* // You should not implement it, or speculate about its implementation* public interface NestedInteger {*     // Constructor initializes an empty nested list.*     public NestedInteger();**     // Constructor initializes a single integer.*     public NestedInteger(int value);**     // @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();**     // Set this NestedInteger to hold a single integer.*     public void setInteger(int value);**     // Set this NestedInteger to hold a nested list and adds a nested integer to it.*     public void add(NestedInteger ni);**     // @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();* }*/
class Solution {public int depthSum(List<NestedInteger> nestedList) {return depthSum(nestedList, 1);}public int depthSum(List<NestedInteger> list, int depth) {int sum = 0;for (NestedInteger n : list) {if (n.isInteger()) sum += n.getInteger() * depth;else sum += depthSum(n.getList(), depth + 1);}return sum;
}
}

leetcode339. 嵌套列表权重和相关推荐

  1. LeetCode 339. 嵌套列表权重和(DFS)

    文章目录 1. 题目 2. 解题 1. 题目 给定一个嵌套的整数列表,请返回该列表按深度加权后所有整数的总和. 每个元素要么是整数,要么是列表.同时,列表中元素同样也可以是整数或者是另一个列表. 示例 ...

  2. python嵌套列表知多少

    今天在创建嵌套列表时遇到一个问题,决定看看到底是谁在背后捣鬼 >>> board1 = [[0]*3 for _ in range(3)] [[0, 0, 0], [0, 0, 0] ...

  3. python压平嵌套列表

    list 是 Python 中使用最频繁的数据类型, 标准库里面有丰富的函数可以使用. 不过,如果把多维列表转换成一维列表(不知道这种需求多不多),还真不容易找到好用的函数, 要知道Ruby.Math ...

  4. python列表的嵌套_Python中关于列表嵌套列表的处理

    在处理列表的时候我们经常会遇到列表中嵌套列表的结构,如果我们要把所有元素放入一个新列表,或者要计算所有元素的个数的话应该怎么做呢? 第一个例子 对于上图中的这样一组数据,如果我们要知道这个CSV文件中 ...

  5. 力扣--扁平化嵌套列表迭代器

    扁平化嵌套列表迭代器 文章目录 扁平化嵌套列表迭代器 一.题目描述 二.分析 方法一: 代码一: 方法二: 代码二: C++代码: 一.题目描述 /*** // This is the interfa ...

  6. leetcode 341. Flatten Nested List Iterator | 341. 扁平化嵌套列表迭代器(Java)

    题目 https://leetcode.com/problems/flatten-nested-list-iterator/ 这标题,翻译的是人话吗?啥叫扁平化嵌套列表迭代器?.. 题解 比较像深度优 ...

  7. Python里面对于嵌套列表的查询

    在学习Python的过程中,学习到了用in和not in来判断指定列表中是否存在要查询的元素,但是这样的判断仅限制于普通列表,如下: 判断是否存在 in:判断指定数据在某个列表序列,如果在返回True ...

  8. html语言中项目列表的嵌套,做HTML嵌套列表的正确方法?

    选项2是正确的:嵌套的 是 它属于我.如果你验证,选项1在html 5中出现错误-信用:用户3272456 正确: 作为.的孩子 生成HTML嵌套列表的正确方法是使用嵌套的 作为一个孩子 它属于它的. ...

  9. python列表切片后得到剩余列表_python列表切片和嵌套列表取值操作详解

    python列表切片和嵌套列表取值操作详解 给出列表切片的格式: [开头元素::步长] # 输出直到最后一个元素,(最后一个冒号和步长可以省略,下同) [开头元素:结尾元素(不含):步长] # 其中, ...

最新文章

  1. python用什么数据库最容易_python3用什么数据库好
  2. java string 常用方法_String类的12个常用方法
  3. Webpack中的sourcemap
  4. 《Drupal实战》——2.5 使用Node clone快速添加测试数据
  5. 2016_shengyang_onsite
  6. 怎么改HTML表单数据,form设置的数据怎么添加到table
  7. mysql 实例名_不为人知的MySQL高可用复制管理工具——Orchestrator简介
  8. [debug] RuntimeError: “nll_loss_forward_reduce_cuda_kernel_2d_index“ not implemented for ‘Int‘
  9. gstreamer插件开发_测评丨高性能多媒体处理器—飞凌OKMX8MM-C开发板
  10. (day 15 - 双指针)剑指 Offer 18. 删除链表的节点
  11. ucenter通信失败和不能登录的解决
  12. Github每日精选(第17期):Django下的内容管理系统wagtail
  13. 模拟人生Java修改_模拟人生4 常用修改秘籍作弊码一览 修改秘籍怎么用
  14. 几种常见的Kafka集群监控工具「送书」
  15. git无法推送refs到远端
  16. Win11设置notepad++为默认文件打开方式
  17. 物联网通信技术原理第5章 移动通信技术
  18. dsp指令ixh_C24XX系列DSP移位指令总结
  19. 高中毕业会考计算机试题,高中计算机会考试题及答案2
  20. 英语自我介绍及问答整理

热门文章

  1. c++循环执行一个函数_循环
  2. wince中BIB文件的详细介绍
  3. wince Hive注册表实现机制
  4. php 时间错误,PHP xdebug调试trace记录时间错误
  5. 安卓工控主板运行时会自动重启_工控主板在工业自动化中的应用
  6. Java代码服务器上下载图片_Java如何从服务器中下载图片
  7. 通达oa 不允许从该ip登陆_通达OA-命令执行漏洞复现
  8. windows 禁用ipv6服务_39.Dism++ Windows系统简洁优化
  9. linux 修改Db2主机名,修改DB2服务器的主机名
  10. 机器学习复制粘贴笔记要点