leetcode341 扁平化巢狀陣列

2022-05-01 22:03:22 字數 573 閱讀 7937

題目:把巢狀陣列展開成一維陣列,

例如

input: 

[[1,1],2,[1,1]]

output:

[1,1,2,1,1]

input: [1,[4,[6]]]output: [1,4,6]

題解:一種簡單的想法,不管怎麼巢狀數字的前後順序不會變,所以去掉括號即是答案。但是這樣就沒意思了。

另一種容易想到的是遞迴法,遇到陣列就去遞迴,整數直接push

class

nestediterator

intnext()

bool

hasnext()

void dfs(vector&nestedlist)}};

回頭看,巢狀陣列其實是數的一種表示方法,巢狀陣列的值是從左至右樹的葉子節點

例如:[1,[2,3,[4,5],6],7]

[1,2,3,4,5,6,7]

Leetcode 341 扁平化巢狀列表迭代器

給定乙個巢狀的整型列表。設計乙個迭代器,使其能夠遍歷這個整型列表中的所有整數。列表中的項或者為乙個整數,或者是另乙個列表。示例 1 輸入 1,1 2,1,1 輸出 1,1,2,1,1 解釋 通過重複呼叫 next 直到 hasnext 返回false,next 返回的元素的順序應該是 1,1,2,1...

LeetCode 341 扁平化巢狀列表迭代器

給你乙個巢狀的整型列表。請你設計乙個迭代器,使其能夠遍歷這個整型列表中的所有整數。列表中的每一項或者為乙個整數,或者是另乙個列表。其中列表的元素也可能是整數或是其他列表。示例 1 輸入 1,1 2,1,1 輸出 1,1,2,1,1 解釋 通過重複呼叫 next 直到 hasnext 返回 false...

LeetCode 341 扁平化巢狀列表迭代器

給你乙個巢狀的整型列表。請你設計乙個迭代器,使其能夠遍歷這個整型列表中的所有整數。列表中的每一項或者為乙個整數,或者是另乙個列表。其中列表的元素也可能是整數或是其他列表。示例 1 輸入 1,1 2,1,1 輸出 1,1,2,1,1 解釋 通過重複呼叫 next 直到 hasnext 返回 false...