題目:把巢狀陣列展開成一維陣列,
例如
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...