給乙個唯一的陣列,返回所有該陣列的子集
例如 nums=[1,2,3]
返回:
[
[3],
[1],
[2],
[1,2,3],
[1,3],
[2,3],
[1,2],
]
答案:
public
class solution
private
void
recurse(list> result, int nums, stack path, int position)
path.push(nums[position]);
recurse(result, nums, path, position + 1);
path.pop();
recurse(result, nums, path, position + 1);
}}
解析:懂遞迴者得天下,一些很複雜的東西用遞迴就很簡單的實現
執行順序1 position=0 path= result=
path=[1] position=1
執行順序2 position=1 path=[1] result=
path=[1,2] position=2
執行順序3 position=2 path=[1,2] result=
path=[1,2,3] position=3
執行順序4 position=3 path=[1,2,3] result=
result=[1,2,3] return
執行順序5 position=2 path=[1,2] result=[1,2,3]
path=[1,2] position=3
執行順序6 position=3
result=[1,2] return
...
1588 所有奇數長度子陣列的和
題目描述 給你乙個正整數陣列 arr 請你計算所有可能的奇數長度子陣列的和。子陣列 定義為原陣列中的乙個連續子串行。請你返回 arr 中 所有奇數長度子陣列的和 示例 1 輸入 arr 1,4,2,5,3 輸出 58 解釋 所有奇數長度子陣列和它們的和為 1 1 4 4 2 2 5 5 3 3 1,...
LeetCode 1588 所有奇數長度子陣列的和
給你乙個正整數陣列 arr 請你計算所有可能的奇數長度子陣列的和。子陣列 定義為原陣列中的乙個連續子串行。請你返回 arr 中 所有奇數長度子陣列的和 輸入 arr 1,4,2,5,3 輸出 58 解釋 所有奇數長度子陣列和它們的和為 1 1 4 4 2 2 5 5 3 3 1,4,2 7 4,2,...
1588 所有奇數長度子陣列的和
給你乙個正整數陣列 arr 請你計算所有可能的奇數長度子陣列的和。子陣列 定義為原陣列中的乙個連續子串行。請你返回 arr 中 所有奇數長度子陣列的和 示例 1 輸入 arr 1,4,2,5,3 輸出 58 解釋 所有奇數長度子陣列和它們的和為 1 1 4 4 2 2 5 5 3 3 1,4,2 7...