该算法需要从给定列表中生成所有可能的组合(不包括空集)。
list => [1, 2, 3]
combinations => [{1}, {2}, {3}, {1,2}, {1,3}, {2,3}, {1,2,3}]
该算法将花费 O(2 n ) 时间复杂度来生成所有组合。但是,我不确定改进的算法是否可以降低时间复杂度。如果存在改进的算法,请分享您的知识!
如果它需要 O(2 n ) 是指数的,我想了解一下这个算法属于 P、NP、NP-Complete 或 NP-Hard 的哪个类。提前致谢 :)