牛客网 字符串的排列

题目:

输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。

解法:

参考:python itertools模块指南

字符串的排列

利用了itertools.permutations(iterable[, r])

iterable是迭代器(对象) 
r是迭代长度,默认为可获得的最大长度迭代

作用:返回连续长度为r的的迭代器(对象)

# -*- coding:utf-8 -*-
import itertools
class Solution:
    def Permutation(self, ss):
        # write code here
        if not ss:
            return []
        return sorted(list(set(map(''.join, itertools.permutations(ss)))))

猜你喜欢

转载自blog.csdn.net/sxllllwd/article/details/81486724