Заполнение и поиск в двумерном массиве

231
01 января 2018, 11:30

Всем привет, работаю с двумерным массивом таким образом заполняю:

for (int i = 0; i < 1000; i++)
    {
        for (int j = 0; j < 100; j++)
            r[i][j] = i*j;
    }

Потом мне надо найти элементы в этом массиве. Опять придется прогонять через двойной цикл, что думаю не очень хорошо. Как думаете, что тут будет лучше использовать?(что-нибудь из stl библиотеки может). Нужно чтобы по времени выполнения было быстрее.

Answer 1
  #include <iostream>
    #include <iomanip>
    template <class T>
    // нет никакого цикла 
    const std::pair<size_t, size_t> findVal(T* p, const size_t r, const size_t n, T item)
{
    size_t first = 0, second = 0;
    T* I = std::find(p, p + r * n, item);
    first = (I - p) / n;
    second = (I - p) % n;
    return std::make_pair(first, second);
}
// тест
int main()
{        
    const size_t row = 8, column = 10;
    int r[row][column];
    for (size_t i = 0; i < row; i++) {
        for (size_t j = 0; j < column; j++) {
            r[i][j] = i*j;
            std::cout <<std::setw(4) << r[i][j] <<' ';
        }
        std::cout << '\n';
    }
    const int k = 56;
    std::pair<size_t, size_t> coord = findVal(r[0], row, column, k);
    if (coord.first != row)
        std::cout << "r[" << coord.first <<"][" << coord.second <<"] == " << k;
    else
        std::cerr << " error:  there is no object with such a value";
    return 0;
}
но лучше такой код прятать в шаблонный  класс 
template <class T>
class Some_type {....};
Some_type matrix(r[0]);
matrix.find(val);.... 
READ ALSO
Админ. права при выключенном UAC

Админ. права при выключенном UAC

Есть программа, которой нужны админские привилегии (например, доступ в папку "C:\Program Files")Прога запускается под обычным пользователем

227
Проблемы со статичными массивами NullPointerException

Проблемы со статичными массивами NullPointerException

При открытии главного активити считываю строки из текста потом забиваю их в static String [] в отдельном классе от активитиГлавный активити делает...

235
перенос properties в map

перенос properties в map

Такой вопрос, есть файл properties нужно все его значения перевести в Map, как грамотно это сделать? За ранее благодаренВсех с наступающим)

215