A HISTORY OF ALGORITHMS: FROM ANCIENT ROOTS TO MODERN COMPLEXITY