We probably should write an implementation of HashTable that uses 64-bit long hash codes (i.e. HuskyCodes) just so that we can demonstrate that it's not just about sorting.
We would have the same desirable property of uniformity for our hash. But is there any way we can take advantage of the other property: that the hash has a quasi-monotonic relationship with the object? It wouldn't make much difference for separate chaining. But it might make a big difference for linear probing (open addressing). Ideas?
The whole idea may be nutty because of course we would never use all 64 bits for our hash in any case. But I'm intrigued by the idea of linear probing using the extra information to decide which direction to probe in.
We probably should write an implementation of HashTable that uses 64-bit long hash codes (i.e. HuskyCodes) just so that we can demonstrate that it's not just about sorting.
We would have the same desirable property of uniformity for our hash. But is there any way we can take advantage of the other property: that the hash has a quasi-monotonic relationship with the object? It wouldn't make much difference for separate chaining. But it might make a big difference for linear probing (open addressing). Ideas?
The whole idea may be nutty because of course we would never use all 64 bits for our hash in any case. But I'm intrigued by the idea of linear probing using the extra information to decide which direction to probe in.
Call me crazy!!