A novel and efficient algorithm to solve subset sum problem (2003.06571v2)
Abstract: In this paper we suggest analytical methods and associated algorithms for determining the sum of the subsets $X_m$ of the set $X_n$ (subset sum problem). Our algorithm has time complexity $T=O(C_{n}{k})$ ($k=[m/2]$, which significantly improves upon all known algorithms. This algorithm is applicable to all NP-complete problems. Moreover, the algorithm has memory complexity $M=O(C_nk)$, which makes our algorithm applicable to real-world problems. At first, we show how to use the algorithm for small dimensions $m=4 ,5 ,6 ,7 ,8$. After that we establish a general methodology for $m>8$. The main idea is to split the original set $X_n$ (the algorithm becomes even faster with sorted sets) into smaller subsets and use parallel computing. This approach might be a significant breakthrough towards finding an efficient solution to $NP$-complete problems. As a result, it opens a way to prove the $P$ versus NP problem (one of the seven Millennium Prize Problems).