text function subsets(nums): result = [] backtrack(nums, 0, [], result) return result function backtrack(nums, start, current, result): result.append(copy of current) for i from start to length(nums) - 1: current.append(nums[i]) backtrack(nums, i + 1, current, result) current.pop() Time complexity: . There are subsets, each takes to copy. Space complexity: for recursion depth.
##### ###### ##### ### # # ### # # ###### ## ## ## ## ## ## ## # # # # # ## ##### #### ##### # # # # # # # #### ## # ## ## ## ## # # # # # ## ## # ###### ## ### # ### # ######
$ curl repovive.com/roadmaps/maang-interview-prep/backtracking/subsets-pseudocode
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█████████████████████████████████████████████████████████████████████████████████