匹配算法匹配两组字符串

时间:2013-08-30 11:28:46

标签: algorithm pattern-matching string-matching

  1. 有两组字符串。
  2. 每个字符串有两个部分。
  3. 第一个集合中的每个字符串与其他集合的某个字符串匹配。
  4. 每个字符串在下一组中最多最多 1个计数器部分。
  5. 字符串在另一组中可能没有任何匹配。
  6. 与另一组相同。如果第二组中的字符串与第一组中的字符串匹配。它不能与任何其他字符串匹配。 我需要一个匹配的算法来匹配这两组。

3 个答案:

答案 0 :(得分:1)

对于你来说,你需要

1): 2)第一个单词中的1个索引 3)第二个单词中的1个索引 4)你必须每次与第二个单词中所有字母的第一个单词中的字母对话

答案 1 :(得分:0)

你可以:

  1. 对集合(O(n log n) + O(m log m)
  2. 进行排序
  3. 浏览每个已排序的列表并检查是否存在匹配项(O(n + m)
  4. 总体复杂度为O(max(n,m) log(max(n,m)))

答案 2 :(得分:0)

您的描述不是很清楚。 如果你想要一个函数将两个集合与另一个集合中的每个字符串进行比较,除了字符串本身... 试试这个吗?

def search(set1, set2):
    for astring in set1:
        for anotherstring in set2:
            if astring == anotherstring:
                pass
            else:
                Do something

或功能的任何变化? 我理解这个答案可能完全错误,但我认为我的意思是什么?