用python实现19. 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba
时间: 2024-05-08 18:16:50 浏览: 124
Python实现全排列的打印
思路:
将字符串转化为字符数组,使用递归的方式进行排列,每次固定一个字符,然后对剩下的字符进行排列。
代码实现:
```python
def permutation(s):
if not s:
return []
if len(s) == 1:
return list(s)
res = []
for i in range(len(s)):
for j in permutation(s[:i] + s[i+1:]):
res.append(s[i] + j)
return res
s = input("请输入一个字符串:")
res = permutation(s)
res.sort()
for i in res:
print(i)
```
示例输出:
```
请输入一个字符串:abc
abc
acb
bac
bca
cab
cba
```
阅读全文