ankit_it09
Joined 11 years ago
Joined 11 years ago
>>Regarding Compare your "but it can also cause some slots to be skipped or repeated" - I think its correct - Let me try to explain this means that some slots may never be probed or may be probed more than once, which wastes time and space. For example, if the array size is 8 and the original index is 3, then quadratic probing will try the following indexes: 3, 4, 7, 4 (repeated), 3 (repeated), 4 (repeated), and so on. As you can see, indexes 0, 1, 2, 5, and 6 are never probed.
And yes you are correct - Python does not use the MurmurHash3 algorithm for hashing objects in dictionaries. My bad I mixed up two different things and though it uses this mmh3 for hashing. I have updated it now and made it more like my understanding of python dictionaries.
Thanks, for your review and pointers to fix it. Will keep it in my mind to get it reviewed before publishing any article.
Avoid having redundant work because, keep stakeholders in loop because this is something necessary to be handled from start else its very difficult to handle at the alter point.
Many of the things gets fixed by automating and following few of the best practices to improve the development processes. Code reviews, Code push approvals, unit tests, integration tests, CI/CD. These reduces the debts and helps to plan to handle other debts.