Tôi cần biết liệu một số ternary tree có tốt hơn hash table hay không.Cây Ternary Vs Bảng băm
Tôi đã xem câu hỏi này để trả lời another question I had nơi người nào đó nói rằng cây ba đại thường nhanh hơn bảng băm. Tôi thấy khó tin, vì vậy tôi quyết định nghiên cứu một chút về nó.
This one website from Princeton dường như là nguồn gốc của niềm tin. Tôi đã xem xét thuật toán được mô tả là O (log n + k) trong đó n là số lượng từ được lưu trữ, và k là độ dài của khóa.
Dường như với tôi rằng cách duy nhất này có thể nhanh hơn là nếu bạn thường tìm kiếm các yếu tố chưa được lưu trữ. Một điều khiến tôi phiền lòng, đó là việc thu thập thông tin không liên tục của một trie sẽ khiến bạn đánh các trang đã được hoán đổi, nhưng liệu đây có phải là một hiệu ứng chính chỉ có thể được nhìn thấy thông qua các điểm chuẩn.
Bây giờ tôi biết rằng có thể có ưu và khuyết điểm đối với cả hai người, và nếu có, tôi muốn biết họ là ai. Điểm chuẩn cũng hữu ích.
Với ngữ cảnh, bạn gần như chắc chắn muốn so sánh các bảng băm với * các cây * hoàn toàn chức năng. Cây cân bằng bắt buộc có thể được diễn đạt theo các mảng để chúng hoạt động tốt hơn nhiều so với các đối tác thuần túy của chúng (đó là tất cả những gì có sẵn trong Haskell). –