Я просматриваю общий список, чтобы найти элементы на основе определенного параметра.
В целом, какая была бы лучшая и быстрая реализация?
1. Прокручивание каждого элемента в списке и сохранение каждого совпадения в новом списке и возвращение этого
foreach(string s in list)
{
if(s == "match")
{
newList.Add(s);
}
}
return newList;
Или
2. Используя метод FindAll и передав ему делегат.
newList = list.FindAll(delegate(string s){return s == "match";});
Разве они оба не работают в ~ O (N)? Что было бы лучше всего здесь?
С уважением, Джонатан