Предположим, что у меня есть два списка объектов, и я хотел бы сопоставить каждый объект в списке один с каждым объектом в списке два.
Вероятно, это был бы алгоритм, который можно было бы сразу же придумать.
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 соответственно.
match
? - person Fred Foo   schedule 10.07.2012match
может быть чем угодно, то этот алгоритм (без учета опечаток в приращении внешнего цикла) асимптотически оптимален. Чтобы улучшить его, вам нужно знать, что делает код внутри цикла. - person Fred Foo   schedule 10.07.2012