【发布时间】:2012-06-26 00:14:18
【问题描述】:
我有一个字符串和一些空格,例如字符串是“accttgagattcagt”,我有 10 个空格要插入。
如何遍历该字符串和空格的所有组合?字符串中的字母不能重新排序,必须全部插入空格。
你如何计算重排的数量(不重复它们)?
什么是合适的词呢?排列、组合还是其他?
(我将其可视化为 1 和 0 的字符串,其中 1 由字符串使用,0 是空格。
因此,由 3 个字母和 2 个空格组成的短字符串将要求所有具有 3 个 1 和 2 个 0 的所有 5 位数字,例如11100、11010、11001、10110、10101、10011、01110、01101、01011、00111?
但是在纸上制作短序列很容易,我正在努力制作一个 for 循环来做到这一点:(。创建这个序列的伪代码非常好,请计算一下它会有多长时间?
递归会更容易理解,但如果以某种方式避免递归会更快吗?)
【问题讨论】:
-
所以你想要插入空格的字符串的所有排列,而字符串中字符的顺序不会改变?
标签: algorithm recursion permutation