问题标签 [anagram]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
770 浏览

ruby - Anagrams Code Kata,Ruby 解决方案非常慢

我最近一直在玩 Ruby,我刚刚完成了来自http://codekata.pragprog.com的 Anagrams Code Kata 。

该解决方案是测试驱动的,并利用了独特的素因数分解定理,但它似乎运行得非常慢。到目前为止,仅在 45k 文件上它已经运行了大约 10 分钟。任何人都可以给我任何关于提高我的代码性能的建议吗?

0 投票
2 回答
539 浏览

haskell - 欧拉项目的方形字谜词对

我正在尝试解决 Haskell 中 Euler 项目(此处)的“方形字谜词对”问题,但我被困住了......

问题如下(我缩短了它):

  • 取一个词,说“CARE”和它的字谜之一,例如“RACE”。
  • 用唯一的数字替换“CARE”的每个字母,例如 C = 1、A = 2、R = 9 和 E = 6。它恰好是 1296,是一个平方数。
  • 按照相同的替换策略替换字谜的字母(“RACE”),它会生成 9216,它也是一个平方数!

给定一个单词列表,由这样一对单词组成的最大平方数是多少?

我设法从文件中提取了所有字谜对,并将它们放在 [(String,String)] 形式中,即 [("CARE","RACE")..]。

在下一步(映射 anasquare)中,对于每对单词,我想链接可以生成的最大平方数,使其看起来像 [(9216,"CARE","RACE")..]。

好吧,有一个技巧(必须有!)来避免蛮力方法,但到目前为止我还没有找到它......实际上问题不在这里,假设我想采用蛮力方法并检查每个字母 -> 数字转换。我只是不知道如何在 Haskell 中做到这一点。也许我累了,但我只是在这面前目瞪口呆。一定有一个简短而优雅但不太晦涩的写法,有人有想法吗?

这就是我所做的,我省去了字谜搜索和文件解析功能:

0 投票
1 回答
96 浏览

dictionary - 我在哪里可以获得 Anagram Dictionary 单词?

嗨,我正在实施一个字谜填字游戏。我需要很多字典单词来实现填字游戏。那么我在哪里可以在互联网上获得大量的字谜词?请帮忙

0 投票
1 回答
740 浏览

data-structures - 查找给定数字的下一个较大的字谜

找到给定数字的下一个较大字谜的有效算法是什么?

例子:

  1. 输入:7813 -> 输出:7831
  2. 输入:3791 -> 输出:3917
  3. 输入:4321 -> 输出:(无)
0 投票
4 回答
1416 浏览

anagram - 这是最好的字谜检查解决方案吗?

我正在寻找一种有效的解决方案来检查两个字符串是否是字谜,但字符表/字典检查可能不是 unicode 的好解决方案。我想出了一个解决方案,但我不知道如何证明它在数学上是正确的。公式表达为“ (a + b) = (c + d) 和 a XOR b XOR c XOR d = 0 ==> (a,b) 和 (c,d) 是字谜”。也许你可以帮助我。下面是一个实现。

0 投票
1 回答
1585 浏览

python - 在文件中查找字谜

我想要一个程序在文件中查找字谜。例如:

该文件将包含一长串没有空格的单词。

这是我当前的代码:

0 投票
3 回答
1783 浏览

objective-c - 查找字谜的算法 Objective-C

我有一个算法可以在一组八个字母的单词中找到字谜。实际上,它是将较长单词中的字母按字母顺序排列,对较短的单词一个接一个地执行相同的操作,并查看它们是否存在于较长的单词中,如下所示:

tower = eortw two = otw rot = ort

这里的问题是,如果我ort在里面寻找eortw(或在塔中腐烂),它会找到它,没问题。腐烂在塔内被发现。但是,otw不在里面eortw(或两个在塔中),因为中间有 R。因此,它认为在塔中找不到两个。

有没有更好的方法可以做到这一点?我正在尝试在 Objective-C 中执行此操作,并且八个字母的单词和常规单词都存储在NSDictionaries(以其正常和按字母顺序排列的形式)中。

我看过其他各种帖子。StackOverflow 上的字谜,但似乎没有一个解决这个特定问题。

这是我到目前为止所拥有的:

0 投票
1 回答
161 浏览

java - 样式(已回答递归和越界异常,这是新的)

我正在尝试编写一个包含两个单词或短语的程序,并通过查看它们的 unicode 值是否匹配来测试它们是否是字谜。只有当它们的长度相同时,“搜索”方法才会运行。我遇到了问题,但现在已经解决了。

这是修改后的版本:

我想知道您对代码布局方式的看法。清楚吗?我应该采取不同的做法吗?或者你觉得它很容易阅读?你对我如何让别人更清楚有什么建议吗?

如果我添加评论,它们应该简短还是我应该在多行评论中解释该部分是如何工作的?

我想让它看起来尽可能直截了当,对此我几乎没有得到真正的建议。所以如果有人有任何想法。

0 投票
2 回答
147 浏览

ruby - 从数组中删除仅大小写不同的字符串值(Ruby)

所以,这是前言:

我是 Ruby 的初学者。我正在研究一个字谜查找脚本(在文本文件中查找所有字谜)。本质是:我创建了一个字典,其中键是单词代码,值是一个数组,其中包含引用此代码的单词。是这样的:{"abdeis"=>["abides", "biased"] ,"achr"=>["char"], ... }。最后我只是打印出长度> 1的值。到目前为止这么好。

这是交易:我想修改输出,以便省略这种情况:["Wood", "wood", "WooD"]- 仅在情况下都是不同的。但是这种情况应该保留:["Doom", "DooM", "mood"]

我目前的一段代码:

anagram_dict 是上面提到的字典。

我应该做哪些检查才能扔掉这些箱子?我想到的东西对我来说似乎很笨重。提前致谢!

0 投票
2 回答
475 浏览

objective-c - 字谜/部分字谜检测算法找到不正确的答案

我编写了以下方法来确定一个长单词是否包含一个较短的单词,并且我传递字母的顺序似乎会影响结果。

我注意到,如果我喂它absconds并且bassy它正确报告NO,但如果我按字母顺序排列字母并给出它abcdnossabssy它给出YES。我不太确定这是为什么 - 任何人都可以发现这个问题吗?