In computer science, NP-hardness refers to a category of problems that are at minimum as challenging as the toughest problems in NP. These problems, informally considered ‘difficult to solve’ with standard algorithms, belong to a class where solutions can be confirmed in polynomial time.
The traveling salesman problem is an example of an NP-hard problem. Given a list of cities and their pairwise distances, find the shortest possible route that visits each city exactly once and returns to the starting city.