【问题标题】:Minimum of subsequences required to convert one string to another将一个字符串转换为另一个字符串所需的最少子序列
【发布时间】:2020-08-10 05:07:15
【问题描述】:

我一直在尝试练习算法,偶然发现了这个问题:https://www.geeksforgeeks.org/minimum-number-of-subsequences-required-to-convert-one-string-to-another-using-greedy-algorithm/

stackoverflow 上可能类似的问题:Find minimum concat number of two strings

我一直在思考问题中给出的示例,但我无法弄清楚给定的任务。

有人可以通过更多示例帮助我理解这个问题吗?在我可以尝试编写算法之前?

【问题讨论】:

  • 显示您当前的工作。解释您的思考过程以及您遇到的问题
  • @Thankyou 我没有要求解决方案。我要求理解这个问题。如果我能理解这个问题,我一开始就不会问

标签: javascript data-structures dsa


【解决方案1】:

我认为您的主要问题可能是您不知道如何转换 B 字符串。
所以任务说明你必须从B 的子序列中构建字符串A

  1. 所有可能的子序列
    B 示例字符串有 31 个可能的子序列,我不会全部写下来。
    为了得到要点,我将使用序列ABCD,它只有 16 个可能的子序列。
D
C
CD
B
BD
BC
BCD
A
AD
AC
ACD
AB
ABD
ABC
ABCD

一般的子序列在这里解释:https://www.geeksforgeeks.org/subarraysubstring-vs-subsequence-and-programs-to-generate-them/

  1. 构建字符串A
    现在,在您找到所有可能的子序列之后,您的任务就是从这些子序列中构建字符串 A
    所以基本上你必须附加这些来表示字符串A
    目标是找到可以做到这一点的最少数量的这些序列。
    因此,如果上面的序列是我的BA 是“ACDB”,那么解决方案是:
ACD + B => 2 sub sequences needed

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-30
    • 2011-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多