Эффективно поиск трехмерного схема в бесконечном массивеC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Эффективно поиск трехмерного схема в бесконечном массиве

Сообщение Anonymous »

У меня есть доступ к функции Bool getState (int x, int y, int z) , которая возвращает значение PF бесконечное 3D -логическое массив, концептуально формируется как [∞] [4] [∞]. То есть размер y ограничено 4, но x и z имеют бесконечные по размеру. < /P>
Я пытаюсь найти, существует ли конкретный 3D -логический паттерн размера Xlen × ylen × Zlen в пределах определенной границевой коробки вдоль x и Z -размеров (например, x в [xmin, xmax], z [zmin, zmin, zmin, zmin, ZMIN, ZMIN, ZMIN, ZMIN, ZMIN. Поиск всегда находится сверху вниз вдоль оси Y, что означает, что для каждой координаты x и z рассматриваются только верхние значения Ylen y. < /P>
Дополнительный контекст: < /p>
• The likelihood of getState(...) returning true decreases as y increases.

• The pattern is arbitrary (not necessarily compact or rectangular in structure).

• The data structure is fully random and unpredictable except true values getting more sparse as y increases
< /code>
Существует ли более эффективный способ поиска этой 3D -шаблона, чем наивно, что проходит через каждую возможную отправную точку (x, z) в ограничивающей коробке и проверяя совпадение на каждом? Могут ли разреженность и снижение вероятности истинных значений с увеличением y быть использованным для оптимизации этого поиска?

Подробнее здесь: https://stackoverflow.com/questions/796 ... nite-array
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»