Tôi nghĩ rằng ý tưởng của bạn về một bảng băm là một chút [không còn tồn tại]. Bảng băm chia nhỏ các khóa thành các danh sách giống nhau. Ví dụ:bảng băm dựa trên chữ cái đầu tiên của tên, vì vậy sẽ có 26 danh sách. Hàm băm của bạn là chữ cái đầu tiên của tên, sau đó giúp tìm kiếm nhanh hơn.
md5, sha1 được sử dụng để lấy các hàm băm được sử dụng để xác minh rằng dữ liệu không bị giả mạo. chúng thường có phiên bản 128-bit hoặc 160-bit. Vì vậy, nó lấy dữ liệu X và gửi nó thông qua một hàm băm để tạo ra một chuỗi ký tự số 128 bit phải giống nhau cho dù nó được thực hiện ở đâu. Đây thường là một điều bảo mật.
CHỈNH SỬA: Mở rộng về Câu hỏi về cách lấy khóa.
Bạn có thể sử dụng một mô đun dữ liệu để tạo khóa sử dụng cho hàng. Trong ví dụ dữ liệu% X, trong đó X là tổng số khóa bạn muốn có. Vấn đề với điều này là X rất khó tìm; nếu bạn có 20 mục, thì việc biến X thành 20 là khả thi và tìm kiếm nhanh chóng vì mỗi mục có hàng riêng. Nhưng nếu bạn có 1000 mục, thì việc làm% 1000 là KHÔNG khả thi. Làm điều gì đó như X =75 sẽ hiệu quả hơn cho việc này.