Как при помощи стандартных stl алгоритмов реализовать поиск по вектору векторов (так чтобы красиво было
) ?
Здравствуйте, Аноним, Вы писали:
А> Как при помощи стандартных stl алгоритмов реализовать поиск по вектору векторов (так чтобы красиво было ) ?
Поиск чего?
Что значит "красиво" в твоем понимании?
Здравствуйте, Аноним, Вы писали:
А> Поиск элемента этого двумерного массива (а какие могут быть варианты???)
Поиск целого вектора, например. Или некой последовательности элементов.
B>>Что значит "красиво" в твоем понимании?
А> "Красиво" на stl, в моем понимании, означает с максимальным использованием возможностей стандартных алгоритмов
Так не пойдет?
#include <vector>
#include <algorithm>
template <class T>
typename std::vector<T>::iterator find(std::vector<std::vector<T> >& arr, const T& val)
{
typename std::vector<std::vector<T> >::iterator b = arr.begin(), e = arr.end();
for(; b != e; ++b)
{
typename std::vector<T>::iterator it = std::find(b->begin(), b->end(), val);
if(it != b->end())
return it;
}
return arr.back().end();
}