khớp mẫu n chiều


20

Một số kết quả được biết đến để tìm một phân đoạn n chính xác bên trong một mảng n chiều là gì?

Trong 1D, nó chỉ là một vấn đề khớp chuỗi, KMP thực hiện nó trong thời gian tuyến tính.

Trong 2D, bài báo này cho thấy nó có thể được thực hiện trong thời gian tuyến tính với ít không gian thừa.

Vấn đề này có thể được giải quyết trong trường hợp xấu nhất theo thời gian tuyến tính cho bất kỳ kích thước cố định nào không?

Câu trả lời:


13

Bạn có thể giải quyết vấn đề theo một số kích thước cố định bằng cách mở rộng giải pháp gốc theo thời gian tuyến tính của Bird từ năm 1977 http://www.scTHERirect.com/science/article/pii/0020019077900175 (cần đăng ký một cách đáng buồn).

Ý tưởng chung (trong 2D) là ở bước 1 để xây dựng một máy tự động Aho-Corasick của các hàng của mẫu 2D và sau đó đưa vào từng hàng của văn bản 2D từng cái một. Sau đó, bạn sẽ tìm thấy tất cả các vị trí mà các hàng mẫu khớp với văn bản. Để hoàn tất, bây giờ bạn chỉ cần thực hiện tìm kiếm 1D cho (các nhãn của) các hàng của mẫu theo đúng thứ tự trong một cột trong đầu ra của bước 1, sử dụng KMP. Tất cả điều này cần thời gian tuyến tính.

Sử dụng cùng một phương pháp, bạn có thể giảm từ bất kỳ vấn đề khớp chính xác nào với vấn đề về kích thước d-1. Theo cách này, bạn có được một giải pháp thời gian tuyến tính cho bất kỳ kích thước cố định nào d.


9

Có thể giải quyết nó trong thời gian tuyến tính gần như (tối đa polylog) bằng các kỹ thuật FFT. Bạn có thể xem trên giấy: http://www.cs.tau.ac.il/~klim/ con / CEPR08.pdf nơi chúng tôi sử dụng các kỹ thuật FFT để khớp mẫu một chiều. Nếu bạn muốn giải quyết khớp mẫu đa chiều, bạn chỉ cần sử dụng FFT chiều cao.


Với bài báo là từ năm 2008, tôi cho rằng các thuật toán thời gian tuyến tính chưa được biết đến.
Chao Xu

Tôi chỉ đưa ra như một ví dụ về kỹ thuật có thể được sử dụng để giải quyết vấn đề của bạn. Ưu điểm của phương pháp này là cho phép bạn cũng giải quyết vấn đề với sự không phù hợp và không quan tâm. Nhưng đối với chính xác một mô hình khớp nối tồn tại alg thời gian tuyến tính. vì vậy có thể nó được biết đến với đa chiều.
Klim

1
Tôi nghĩ rằng kết quả cơ bản về khớp mẫu với ký tự đại diện là từ Fischer và Paterson 1974 và sau đó liên tục được điều chỉnh và đơn giản hóa cho đến khi cs.bris.ac.uk/Publications/pub_master.jsp?id=2000602 (xin lỗi vì tự trích dẫn). Tuy nhiên, có thể hơi quá mức cho vấn đề mà OP yêu cầu đưa ra phương pháp khớp chính xác cũ hơn mà tôi đề cập dưới đây.
Raphael
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.