Unlocking Hashing: Quadratic Probing Explained