Nunca vi un libro de esos. La verdad que algoritmia compleja no tocarás en la vida real, salvo que seas un geek de los que trabaja en empresas de software como Oracle, Microsoft, etc en departamentos de desarrollo y con repositorios 100% cerrados. Hoy en día no hay que inventar la rueda hombre, simplemente saberse los repositorios de librerías y herramientas más usadas en los lenguajes que quieras, y ahí encontrarás los bloques ya prefabricados para construir tu "edificio". Me acuerdo de la primera vez que me pusieron delante de un terminal de IBM en un mainframe y me dijeron por aquel entonces "un consejo, no inventes la rueda, copia el código de otros programas y jcl , modificas entradas-salidas y la lógica que corresponda, y para adelante"