The most
straightforward root-finding method. It also requires the least effort to
program and to guarantee
convergence. If
f is a
continuous function, and you wish to find a root, you first find 2 points
a_1,b_1 between which f changes
sign (
f(a_1) <= 0 <= f(b_1)).
Now just do a binary search for the root: at each iteration, pick m_n=(a_n+b_n)/2, and take a_{n+1}=m_n, b_{n+1}=b_n if f(m_n) <= 0 or a_{n+1}=a_n, b_{n+1}=m_n otherwise.
It's easy to see that the method must converge to a root (unlike the Newton-Raphson method or the "regula falsi" method); however, each iteration adds just one bit of accuracy (it's a binary search, after all), so convergence is much slower than with these methods (when they converge).
For unknown functions, it is usually best to combine several iterations of a fast method with something based on the bisection method, to ensure we're still converging.