If I have some non-negative functions with shapes similar to the one in the picture, (imagine, for simplicity, that each function is the sum of two $sin$ waves taken in absolute value.)
In order to find possible roots of the function, what is the most suitable algorithm that I can use and implement in a programming language? It seems that those cusps can "deceive" both fixed-point iteration and the Newton method. I was wondering if there are some "fixes" or variants to the iteration method to deal with those cusps and find where a cusp touches the x axis.

Taking care to choose a suitable step and tolerance, Newton-Raphson method works:
Obviously nothing miraculous, you've to be careful, but not impossible either.