假设我们有一个字符串 s。我们必须找到所有可能的 s 字母组合。如果有两个具有相同字符集的字符串,则显示它们中字典序最小的字符串。一个约束是 s 中的每个字符都是唯一的。
因此,如果输入类似于 s = "pqr",那么输出将是 ['r', 'qr', 'q', 'pr', 'pqr', 'pq', 'p']
让我们看看以下实现以获得更好的理解 -
def solve(s): st_arr = [] for i in range(len(s)-1,-1,-1): for j in range(len(st_arr)): st_arr.append(s[i]+st_arr[j]) st_arr.append(s[i]) return st_arr s = "pqr" print(solve(s))
"pqr"输出结果
['r', 'qr', 'q', 'pr', 'pqr', 'pq', 'p']