成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

[LeetCode] 339. Nested List Weight Sum

騫諱護 / 1895人閱讀

Problem

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 1:

Input: [[1,1],2,[1,1]]
Output: 10
Explanation: Four 1"s at depth 2, one 2 at depth 1.
Example 2:

Input: [1,[4,[6]]]
Output: 27
Explanation: One 1 at depth 1, one 4 at depth 2, and one 6 at depth 3; 1 + 42 + 63 = 27.

Solution
/**
 *     // @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
 *     public Integer getInteger();
 *     // @return the nested list that this NestedInteger holds, if it holds a nested list
 *     public List getList();
 */
class Solution {
    public int depthSum(List nestedList) {
        return helper(nestedList, 1);
    }
    private int helper(List list, int level) {
        int res = 0;
        for (NestedInteger item: list) {
            if (item.isInteger()) res += (level*item.getInteger());
            else {
                res += helper(item.getList(), level+1);
            }
        }
        return res;
    }
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/72410.html

相關(guān)文章

  • 364. Nested List Weight SumII

    摘要:題目解答這一題其實挺的,如果說第一道題的關(guān)鍵是記錄層次,那么這一題的關(guān)鍵是把這一層的傳到下一層去,代碼如下關(guān)鍵點在于把上一層的傳到下一層去,這樣的話,接下來還有幾層,每一層都會加上這個也就等于乘以了它的層數(shù) 題目:Given a nested list of integers, return the sum of all integers in the list weighted by...

    xeblog 評論0 收藏0
  • leetcode 341 Flatten Nested List Iterator 以及其他Iter

    摘要:返回的是表示是否走到了結(jié)尾。起到的就是緩存作用,因為調(diào)用之后馬上就走到下一個了。如果調(diào)用,返回用得到和最初的輸入相同的做相同的步驟存入不斷拆開得到結(jié)果。思想就是來自括號,后面也會跟進的專題 Iterator其實就是一個單鏈表,無法回頭看。java里很多數(shù)據(jù)結(jié)構(gòu)都有這個接口,使用時需要initalize,得到一個iterator. 調(diào)用next()返回的是一個object, 指向的是下一...

    chaosx110 評論0 收藏0
  • leetcode341. Flatten Nested List Iterator

    摘要:題目要求假設(shè)有一個嵌套形式的數(shù)組,要求按照順序遍歷數(shù)組中的元素。思路和代碼首先可以想到通過深度優(yōu)先遞歸的方式將嵌套形式的數(shù)組展開為一個無嵌套的列表。 題目要求 Given a nested list of integers, implement an iterator to flatten it. Each element is either an integer, or a lis...

    MartinHan 評論0 收藏0
  • LeetCode 341. Flatten Nested List Iterator

    摘要:設(shè)計一個迭代器,使其能夠遍歷這個整型列表中的所有整數(shù)。列表中的項或者為一個整數(shù),或者是另一個列表。示例輸入輸出解釋通過重復(fù)調(diào)用直到返回,返回的元素的順序應(yīng)該是。 Description Given a nested list of integers, implement an iterator to flatten it. Each element is either an integ...

    mingzhong 評論0 收藏0
  • [LintCode/LeetCode] Flatten Nested List Iterator

    摘要:首先,根據(jù)迭代器需要不斷返回下一個元素,確定用堆棧來做。堆棧初始化數(shù)據(jù)結(jié)構(gòu),要先從后向前向堆棧壓入中的元素。在調(diào)用之前,先要用判斷下一個是還是,并進行的操作對要展開并順序壓入對直接返回。 Problem Given a nested list of integers, implement an iterator to flatten it. Each element is either...

    spacewander 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<