来看校长爷爷跳孔雀舞,另类的全排列算法
本帖最后由 kiseyzed 于 2022-7-28 17:25 编辑class Solution:
result = []
def solve(self, str, choose=[]):
if len(str) < 2:
return
dump_str = str.copy()
for s in str:
dump_str.remove(s)
choose.append(s)
# print(choose, dump_str)
if len(dump_str) == 2:
print("".join(choose + dump_str.copy()))
dump_str.reverse()
print("".join(choose + dump_str.copy()))
else:
self.solve(dump_str, choose)
dump_str = str.copy()
choose.pop()
if __name__ == "__main__":
str = "我给校长爷爷跳了支孔雀舞"
str = list(str)
Solution().solve(str)
虽然时空复杂度上有点那啥
很喜欢程序说的一句话:校长,爷爷我给孔雀跳了支舞
感谢分享!感觉此风不可长 不敢看那不敢看 想起个看到的句子 校长给爷爷我跳了支孔雀舞 虽然是全排列,但也要以词为单位吧? 有点看不明白 这个有啥用? 好东西,齐分享
页:
[1]