Avatar
0
e2al3qakmdd1okym Beginner
Channing vs Open addressing HashTable
Em có tìm đọc được 1 tài liệu về HashTable ở link này, và có 1 vài thắc mắc. https://www.algolist.net/Data_structures/Hash_table/Open_addressing
  • Khi dùng Channing HashTable, ta phải dùng 1 LinkedList gây overhead, khi dùng OpenAdressing thì cũng phải dùng 1 cấu trúc dữ liệu để lưu cặp key, value vẫn tăng heap size
  • Open addressing (OA) còn gây nghẽn với "DELETE slot" buộc phải rehash lại table, vậy đâu là lí do để dùng OA hasing? Theo em biết thì Java cũng implement HashMap bằng chainning.
  • Answer
Remain: 5
1 Answer
Avatar
tvd12 Beginner
tvd12 Beginner
Cá nhân anh thấy OpenAdressing quá phức tạp chỗ cái đoạn set và remove, mặc dù tư tưởng của nó là không cần dùng thêm linked list, chỉ cần dùng 1 mảng là được. Nên anh nghĩ là OpenAdressing sẽ hữu ích trong các trường cần cực kỳ tiết kiệm bộ nhớ và tỉ lệ đụng độ hash thấp.
  • 0
  • Reply