Problem

Given an array a, find all its subsets

For example, array [1, 2, 3] will have the following subsets

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

Backtracking approach