【发布时间】:2012-05-01 18:06:56
【问题描述】:
由于this 问题,我正在寻找一种优雅的(红宝石)方法来计算this 答案中建议的单词签名。
建议的想法是对单词中的字母进行排序,并对重复的字母进行运行长度编码。因此,例如“mississippi”首先变为“iiiimppssss”,然后可以通过编码为“4impp4s”进一步缩短。
我对 ruby 比较陌生,虽然我可以一起破解一些东西,但我相信这对于有更多 ruby 经验的人来说是一个单一的衬里。我很想看看人们的方法并提高我的红宝石知识。
编辑:澄清一下,计算签名的性能对我的应用程序并不重要。我正在寻找计算签名,以便我可以将它与每个单词一起存储在一个大型单词数据库(450K 单词)中,然后查询具有相同签名的单词(即给定单词的所有字谜,它们是实际的英文单词)。因此专注于空间。 “优雅”的部分只是为了满足我的好奇心。
【问题讨论】: