algorithms based on coursera courses and the book algorithms