37,721
社区成员
发帖
与我相关
我的任务
分享
def subsets(nums):
res = []
def backtrack(nums, tmp):
res.append(tmp)
for i in range(len(nums)):
backtrack(nums[i+1:], tmp+[nums[i]])
backtrack(nums, [])
return res
import itertools
str1="ABC"
for num in range(1,len(str1)+1):
for i in itertools.combinations(str1, num):
print (''.join(i))
print()
A
B
C
AB
AC
BC
ABC
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Python 3.6
from itertools import accumulate
def all_sub_string(a_string):
if len(a_string) == 1:
return [a_string]
else:
return list(accumulate(a_string)) + all_sub_string(a_string[1:])
print(all_sub_string('abcde'))