1

有没有办法为以下示例编写算法而没有糟糕的运行时间

该算法应该能够匹配两个字符串,但是字符串中的每个值都有一个权重。(0-1:0 表示非必要,1 表示必要)如果权重不是 1,则字符不必匹配,因此可能会发生不匹配。这更容易用一个例子来解释。

图案: public static void main (String []args){

样本: public static void main (List<String> command_line_vals) {

重量:

  • 1 为public static void main (
  • 0.5 为String []
  • 0.1 为args
  • 1 为) {

目标是让这两个匹配成功。如果参数更接近模式,则得分更高。在这个例子中,这意味着String []vals它将比上面的样本排名更高。

这与 needleman-wunsch 不同,因为如果 char 的等级为 !=1 那么它根本不应该匹配。

我会使用regex但是这不允许我对匹配的人进行排名。会先使用正则表达式(所有非 1 值字符的通配符),然后在匹配的那些上使用 needleman-wunsch 吗?

欢迎提出建议和头脑风暴。

感谢您的时间。

4

0 回答 0