| 发表于:2007-03-23 14:47:4040楼 得分:0 |
shzues() ( ) 信誉:100 blog 2007-03-23 13:28:34 得分: 0 提一个算法: 给每个字母,分配一个质数,如给a分配2,b分配3,... 然后对每个字符串计算乘积,如ab为6。如果两个字符串的乘积相等 则表示他们是由相同的字母组成的。因为一个数的质因数分解是唯 一的。 这个算法的缺点是,乘积容易溢出。 有道理!!! 我想这是微软想要的答案. 关于溢出,1-100之间有25个素数: 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97 另外,101是第26个.如果字符串较短就没有问题. | | |
|