我正在解决一个有两个输入集的问题
输入1:
多组规则(示例):
规则集1:
1. I am $name
2. I am $age years old
3. $bookname is my favorite book
....
规则集2:
1. I love $sportname
2. $color is my favorite color
....
规则集3:
1. $fruit is my favorite fruit
2. I am a $diet
3. I speak $language
4. I am from $countryname
....
这里 $name,$age,$bookname... 是占位符。可能有多个这样的规则集。没有限制。
输入2:
多组输入字符串。
套装 1:
1. I am 26 years old
2. I am James
.....
套装 2:
1. I am John
2. ToKillAMockinBird is my favorite book
.......
第 3 组:
1. TuesdaysWithMorrie is my favorite book
2. I am Bill
3. I am 26 years old
......
套装 4:
1. I am Jack
2. I am 27 years old
3. WarAndPeace is my favorite book
......
套装 5:
1. I am a vegan
2. I speak English
......
第 6 组:
1. Purple is my favorite color
2. I love football
......
问题陈述 :
对于输入 2 中的每个字符串集,我需要与输入 1 进行匹配,并判断这些字符串是否以相同的顺序出现。
输出 :
Set1 --> false
Set2 --> true
Set3 --> false
Set4 --> true
Set5 --> true
Set6 --> false
我尝试通过迭代每个输入集中的每个字符串并检查它是否存在,如果存在,给它们一个数字,最后检查这些数字是否按升序排列来尝试暴力。但是,这效率不高。输入的Set1、Set2可能是巨大的数据集。有更好的方法来解决这个问题吗?
呼啦一阵风
相关分类