Approaches to Solve NP–Complete Problems