У меня есть «двумерные» данные, хранящиеся в двоичном массиве в основной строке. Мои данные имеют 5 столбцов, время, x, y, z и поле.Как использовать std :: lower_bound с пользовательским итератором?
- Т1, x1, y1, z1, F1
- Т2, х2, y2, z2, F2
- Т3, х3, у3, г3, F3, ...
Эти данные хранится в двойном массиве 1D в основном. Как
double dataArray[] = { T1, x1, y1,z1,F1, T2,x2,y2,z2,F2, T3,x3,y3,z3,F3, ... };
Теперь я хочу, чтобы найти первую строку данных, для которых время равно или больше заданного значения Т0. Как я могу использовать std :: lower_bound для этого?
Я предполагаю, что мне нужен ForwardIterator, который возвращает каждый пятый элемент в этом массиве, но не делает этого. Любая помощь приветствуется.
Похож на проблему XY. Храните данные в правильном формате (структура с двойными полями), и не только ваша проблема исчезнет, но ваш код станет более читаемым и меньше подвержен ошибкам – Slava
это может помочь: http://stackoverflow.com/questions/5685983/skipping- итератор – NathanOliver
@Slava, я не могу изменить способ хранения данных. – user3469604