## Abstract

The knapsack problem is known to be a typical NP-complete problem, which has 2^{n} possible solutions to search over. Thus a task for solving the knapsack problem can be accomplished in 2^{n} trials if an exhaustive search is applied. In the past decade, much effort has been devoted in order to reduce the computation time of this problem instead of exhaustive search. In 1984, Karnin proposed a brilliant parallel algorithm, which needs O(2^{n/6}) processors to solve the knapsack problem in O(2^{n/2}) time; that is, the cost of Kamin's parallel algorithm is O(2^{2n/3}). In this paper, we propose a fast search technique to improve Karnin's parallel algorithm by reducing the search time complexity of Karnin's parallel algorithm to be O(2^{n/3}) under the same O(2^{n/6}) processors available. Thus, the cost of the proposed parallel algorithm is O(2^{n/2}) . Furthermore, we extend this search technique to the case that the number of available processors is P = O(2^{X}), where x ≥ 1. From the analytical results, we see that our search technique is indeed superior to the previously proposed methods. We do believe our proposed parallel algorithm is pragmatically feasible at the moment when multiprocessor systems become more and more popular.

Original language | English |
---|---|

Pages (from-to) | 1-12 |

Number of pages | 12 |

Journal | International Journal of High Speed Computing |

Volume | 9 |

Issue number | 1 |

DOIs | |

State | Published - 03 1997 |

Externally published | Yes |

## Keywords

- Cryptosystem
- Knapsack problem
- NP-complete problem
- Parallel algorithm