实现有效的配对匹配算法

时间:2012-07-10 13:14:16

标签: algorithm theory matching

假设我有两个对象列表,我想将列表一中的每个对象与列表二中的每个对象进行匹配。

这可能是人们会立即提出的算法。

for( it_1=list_1.begin() ; it_1!=list_1.end() ; it_1++ )
  {
      for( it_2=list_2.begin() ; it_2!=list_2.end() ; it_2++ )
      {
          //now match 
           match(*it_1,*it_2);
      }

  }

我想知道是否有更好的方法可以做到这一点。这需要O(n1 * n2),其中n1和n2分别是list_1和list_2的长度。

1 个答案:

答案 0 :(得分:1)

你可以在这里使用多线程,将list1分为2或3个部分,具体取决于你要查找的大小和效率,并在每个线程中使用list2运行匹配算法,然后将结果整理回调用者。 / p>

看看它是否有帮助..