Bisection algorithm to find multiple roots
<p>Is there a way to find all the roots of a function using something on the lines of the bisection algorithm?</p>

<p>I thought of checking on both sides of the midpoint in a certain range but it still doesn't seem to guarantee how deep I would have to go to be able to know if there is a root in the newly generated range; also how would I know how many roots are there in a given range even when I know that the corresponding values on applying the function are of opposite sign?</p>

<p>Thanks. </p>