Вот мой набор чисел, с которым я ищу соответствие
(33, 15, 1)
У меня может быть X количество массивов
это похоже на
(15, 1, 7)
(20, 5, 15)
(7, 2, 33)
...
...
Эта комбинация массивов, по сути, представляет собой матрицу, верно?
Эти числа имеют значение, , поэтому их не следует сортировать (это конкретные идентификаторы в базе данных)
В основном, решение должно сначала пройти по моему первому набору чисел по одному и посмотреть, если мы получим совпадение в первом столбце, если нет, перейти ко второму столбцу, если нет, проверить третий столбец,
так что будет 33 == 15 -> 33 == 20 -> 33 == 7 -> 33 == 1 -> 33 == 5 и т. Д., Пока мы не найдем совпадение, поэтому в этом случае мы сопоставим последний номер в последнем массиве, и это вернется.
если все это не удастся, мы переместимся ко второму числу из моего поискового набора (15) и начнем с начала матрицы и снова пройдемся по всему, пытаясь найти совпадение, и так далее.
Какое наиболее эффективное решение этой проблемы? Сначала я думал о рекурсии, но теперь я не уверен. Должен быть лучший способ, чем циклически повторять каждый набор данных снова и снова. Кажется, что простая итерационная процедура потребует много времени, в зависимости от размера наборов чисел.
[РЕДАКТИРОВАТЬ] -
Эта проблема сейчас именно этого размера, ограничена 3 столбцами
но теоретически количество строк может увеличиться до нескольких сотен, это действительно строки из базы данных, так как я добавляю больше информации, количество строк будет расти