Cây tìm kiếm nhị phân đa chiều được sử dụng cho tìm kiếm liên kết

Communications of the ACM - Tập 18 Số 9 - Trang 509-517 - 1975
Jon Bentley1
1Stanford Univ., Stanford, CA

Tóm tắt

Bài báo này phát triển cây tìm kiếm nhị phân đa chiều (hay còn gọi là cây k-d, trong đó k là số chiều của không gian tìm kiếm) như một cấu trúc dữ liệu để lưu trữ thông tin được truy xuất thông qua các tìm kiếm liên kết. Cây k-d được định nghĩa và các ví dụ được đưa ra. Nó cho thấy khá hiệu quả trong yêu cầu lưu trữ. Một lợi thế đáng kể của cấu trúc này là một cấu trúc dữ liệu duy nhất có thể xử lý nhiều loại truy vấn một cách rất hiệu quả. Nhiều thuật toán tiện ích đã được phát triển; thời gian chạy trung bình đã chứng minh của chúng trong một tệp chứa n bản ghi là: chèn, O(log n); xóa gốc, O(n(k-1)/k); xóa một nút ngẫu nhiên, O(log n); và tối ưu hóa (đảm bảo hiệu suất logarithmic của các tìm kiếm), O(n log n). Các thuật toán tìm kiếm được đưa ra cho các truy vấn tìm kiếm khớp một phần với t khóa được chỉ định [thời gian chạy tối đa đã chứng minh là O(n(k-t)/k)] và cho các truy vấn hàng xóm gần nhất [thời gian chạy trung bình quan sát được thực nghiệm là O(log n)] . Những hiệu suất này vượt xa so với các thuật toán tốt nhất hiện tại cho những nhiệm vụ này. Một thuật toán được trình bày để xử lý bất kỳ truy vấn giao nhau tổng quát nào. Trọng tâm chính của bài báo này là lý thuyết. Tuy nhiên, chúng tôi cảm thấy rằng cây k-d có thể rất hữu ích trong nhiều ứng dụng, và các ví dụ về các ứng dụng tiềm năng được đưa ra.

Từ khóa


Tài liệu tham khảo

Friedman J.H. Bentley J.L. and Finkel R.A. An algorithm for finding best matches in logarithmic time. Stanford CS Rep. 75--482. Friedman J.H. Bentley J.L. and Finkel R.A. An algorithm for finding best matches in logarithmic time. Stanford CS Rep. 75--482.

Blum M. Floyd R.W. Pratt V. Rivest R.L. and Tarjan R.E. Time bounds for selection. Stanford CS Rep. 73-349. Blum M. Floyd R.W. Pratt V. Rivest R.L. and Tarjan R.E. Time bounds for selection. Stanford CS Rep. 73-349.

10.1007/BF00288933

Knuth , D.E. The Art of Computer Programming , Vol. 1 : Fundamental Algorithms . Addison-Wesley , Reading, Mass ., 1969 . Knuth, D.E. The Art of Computer Programming, Vol. 1: Fundamental Algorithms. Addison-Wesley, Reading, Mass., 1969.

Knuth , D.E. The Art of Computer Programmhtg, Vol. 1li: Sorting and Searching. Addison-Wesley, Reading , Mass. , 1973 . Knuth, D.E. The Art of Computer Programmhtg, Vol. 1li: Sorting and Searching. Addison-Wesley, Reading, Mass., 1973.

McCreight , E. Computer Science 144A midterm examination, spring quarter , 1973 . Stanford University . McCreight, E. Computer Science 144A midterm examination, spring quarter, 1973. Stanford University.

Rivest R.L. Analysis of associative retrieval algorithms. Stanford CS Rep. 74--415. Rivest R.L. Analysis of associative retrieval algorithms. Stanford CS Rep. 74--415.