The following Python program generates all ordered subsets of a list. This method is very useful in brute-force approach of solving a problem
def generateSubsets(A, n, sub=[]): if n == 0: print(sub) return generateSubsets(A, n-1, sub) generateSubsets(A, n-1, [A[n-1]] + sub) A = list(map(int, input().split())) generateSubsets(A, len(A))
Input: 1 2 3 4 Output: [] [1] [2] [1, 2] [3] [1, 3] [2, 3] [1, 2, 3] [4] [1, 4] [2, 4] [1, 2, 4] [3, 4] [1, 3, 4] [2, 3, 4] [1, 2, 3, 4]
No comments:
Post a Comment