我有一个数字列表。对于列表中的任何给定数字,我想找到该给定数字的anagram对,它也出现在列表中。
E.g。字谜中的12是21的字谜,121的字谜是112.(假设所有这些数字都出现在数字列表中)
我最初的猜测是对每个数字进行某种编码,使得anagram数字获得相同的编码值,而其他数字不能获得相同的编码值。但我找不到合适的编码算法。
我认为一个编码算法就是找到总和&每个数字的数字的乘积。如果列表中存在一个字谜,那么它也将具有相同的总和。数字的乘积。但是,我怎么能证明只有这些字谜才能有这个和?产品对,即没有非字谜数字将具有相同的总和&产品对?
例如。 Sum&产品对121& 112是(4,2)。但Sum&是否还有其他任何数字?产品对(4,2)?
找到 Sum and Product of n-positive integers
我的假设是否正确?或者是否有一些不同的算法从数字列表中找到anagram对。我必须找到列表中的所有anagram对。
E.g。这些(12,21)和(112,121)中的[10,12,21,0,112,121]是anagram对
我看过anagram问题这个词,但我相信由于这个列表只包含数字,所以可以用更快的方式,然后将单词的每个字符检查到另一个单词。