The authors propose a simple parallel algorithm design technique for several NP-complete problems called parallel exhaustive search. Algorithms can be implemented on an SIMD (single instruction, multiple data flow) architecture with very simple and regular array structure. Actually, the architecture is realized by a content-addressable memory (CAM). The authors design almost-linear algorithms for several NP-complete problems by this approach and estimate the performance and limitation. The computation time of the parallel algorithm for the knapsack problem using the CAM is evaluated, and it is shown that the parallel algorithm is 100 or 1000 times faster than the sequential algorithms.