узгодження n-мірного малюнка


20

Назвіть кілька відомих результатів для знаходження точного n-мірного масиву всередині n-мірного масиву?

У 1D це лише відповідність рядків, KMP робить це в лінійний час.

У 2D, цей документ показав, що це можна зробити в лінійний час з невеликим додатковим простором.

Чи можна цю проблему вирішити в лінійний час у найгіршому випадку для будь-якого фіксованого виміру?

Відповіді:


13

Ви можете вирішити проблему з фіксованою кількістю вимірів, розширивши лінійне оригінальне рішення Bird від 1977 року http://www.sciencedirect.com/science/article/pii/0020019077900175 (передплата потрібна сумно).

Загальна ідея (в 2D) полягає в кроці 1, щоб побудувати автомат Aho-Corasick з рядків 2D-картини, а потім подавати в рядки 2D-тексту по черзі. Потім ви знайдете в тексті всі позиції, які відповідають рядкам з малюнком. Для завершення тепер потрібно лише здійснити 1D пошук (мітки) рядків шаблону у правильному порядку в стовпці на виході кроку 1, використовуючи KMP say. Це все займає лінійний час.

Використовуючи той самий метод, ви можете зменшити з будь-якої заданої величини d точну відповідність до заданої величини d-1. Таким чином ви отримуєте лінійне часове рішення для будь-якого фіксованого розміру d.


9

Вирішити це можна майже за лінійним часом (до полілогічного коефіцієнта), використовуючи методи FFT. Ви можете подивитися на папері: http://www.cs.tau.ac.il/~klim/papers/CEPR08.pdf, де ми використовуємо методи FFT для узгодження одного розмірного шаблону. Якщо ви хочете вирішити багатовимірну відповідність шаблону, вам просто потрібно використовувати високомірний FFT.


З огляду на статтю з 2008 року, я припускаю, що лінійні алгоритми часу ще не відомі.
Чао Сюй

Я наводив це лише як приклад техніки, яку можна використати для вирішення вашої проблеми. Перевага такого підходу в тому, що це дозволяє вам також вирішити проблему з невідповідностями і не хвилюватися. Але що стосується точного відповідності одного розмірного шаблону, існує лінійна часова альг. тому може бути відомо, що багатовимірне.
Клим

1
Я думаю, що основний результат узгодження шаблонів із макрокомандними даними отриманий від Фішера та Патерсона 1974 року, а потім постійно змінювався та спрощувався до cs.bris.ac.uk/Publications/pub_master.jsp?id=2000602 (вибачення за самоцитування). Однак це може бути незначним перевищенням проблеми, заданої ОП, враховуючи старіший метод точного узгодження, про який я згадую нижче.
Рафаель
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.