Applied Computational Thinking with Python : Design algorithmic solutions for complex and challenging real-world problems /: Design algorithmic solutions for complex and challenging real-world problems. (2020)