It helps us decide if a problem is solvable or not. If yes, then how, how fast and how accurate? If not, then an algorithm again helps us decide, if we can solve a part of it. They must be used wisely and a good algorithm that is efficient in terms of time complexities and space complexities will help you do so.