获取排列中删除字符的字符串列表
我想从排列中的字符串中删除一个字符......
假设我有一个函数
def (string,char):
# remove char from string
假设我有 aAabbAA
作为字符串,A 作为字符,那么我想要字符串 [aabb ,aAabb,aabbA,aabbA, aabbAA,aAabbA,aAabbA]
作为输出,A 被删除 3 次、2 次、1 次。
我可以做到这一点的最佳方式是什么?
多谢....
I want to remove a character from a string in permutation....
Let us say that I have a function
def (string,char):
# remove char from string
Say I have aAabbAA
as string and A as char then I want the strings [aabb,aAabb,aabbA,aabbA, aabbAA,aAabbA ,aAabbA ]
as output that is A gets removed 3 times , 2 times , 1 times.
What is the best way in which I can do that ??
Thanks a lot....
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这是一个使用递归的疯狂想法:
编辑:使用
set
:编辑2:使用三元运算符:
编辑3:
timeit
:Here is one crazy idea using recursion:
Edit: Using
set
:Edit 2: Using ternary operator:
Edit 3:
timeit
:这是一个可能有效的解决方案。基本上我使用目标字符和空字符串的所有可能组合的乘积。
这输出:
Here's a solution that might work. Basically I use a product of all possible combinations of the target character and an empty string.
This outputs:
像这样的递归算法可能会对您有所帮助。抱歉,我不是 python 冠军,所以你可能需要自己调整语法。伪代码:
A recursive algorithm like so might help you here. Sorry I'm not a python champ, so you might have to tweak the syntax yourself. Psuedo code: