I’m probably wrong, but I believed I may have solved a NP-complete problem quickly. I’m having a hard time trying to organize my thoughts for others to understand. So if anyone has a constructive suggestion please let me know with the edit suggestions or the commentary.
Anyway, It is known that if any NP-complete problem can be solved quickly, then every problem in NP can because the definition of an NP-complete problem states that every problem in NP must be quickly reducible to every NP-complete problem (that is, it can be reduced in polynomial time).Because of this, it is often said that NP-complete problems are harder or more difficult than NP problems in general. At least according to Wikipedia.
Anyone, who wants an idea of what I was trying to solve please take a look here and take a look at the algorithm down below. I will begin with the explanation of the algorithm.
NOTE: The concept is to visualize the strings as a number line.
The algorithm takes input for a string’s length for L, and the number of strings altogether for X. The hamming distance is for input D. Input Z calculates the exact amount of all possible characters in the string besides the permutations for input D.
We get a set of Z amount of characters. We divide Z by D which is S. We get B possible permutations of characters that can be generated in a list of X strings. In other words, Z divided by Y groupings of the same X should uniquely have B possible permutations within the Z characters. (For the center numerical listed string based on hamming?)
If the algorithm is, correct (or I’ve misled). The center of Z is at the S string which should be the B permutation.
Z = X * X * 1 * L + X * D * D * D + 1 S = Z / D B = S / D Y = S / B CL = D * A ≤ X ≤ B * Y--just for checking P=B*Y
S = S * D / D
D = Z / S
NQ = S / RT P = RT * NQ
Suppose, we have a custom 5th closest string to our primary S which is going to be NQ. We divide NQ by 2 keep adding the sum thereof 5*D until one reaches approximate Z. If it doesn’t equal Z then divide NQ by 2 This will check the algorithm?
Put differently, we have 971 characters altogether in a “superstring.” With these 971 we try to find the 5th closest string. (from 323) We take NQ which is 64.7 and we divide it by 2. Now, 323.6 is our approximated closest string. We take our D which is a 3 hamming distance and multiply it by RT which is 5. We get 15.17. We take 15.17 and multiply it by 64 and we get about 971. 971/5=194.2 We divide it by D and get approximate 3. SO there are 3 other strings that are equivalent to our main solution. To check, we keep subtracting 15 from 971 until we arrive at the closest to 323.