2 ms·
As a more advanced examples take a look at perfect hashing. Without some randomization an attacker can produce collisions for any fast hash functions and thus d
by Perseids 13y ago
As a more advanced examples take a look at perfect hashing. Without some randomization an attacker can produce collisions for any fast hash functions and thus degrade your hash table to the worst case possible. This was a real DoS attack vector in real web applications (see for example https://mail.python.org/pipermail/python-dev/2011-December/115116.html https://mail.python.org/pipermail/python-dev/2011-December/1... ). With a little advanced math this matter is trivial to solve.
Something else I remember was a computer graphics professor saying that the fast fourier transform was the greatest invention after the wheel.
Generally speaking you can find programming jobs where you need basically no understanding of mathematics. But computational engineering science is so much more than programming. Conversely often enough the abstract thinking that is the core of mathematics can greatly help you to tackle the more complex problems you can encounter in programming.