問題タブ [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 - アナグラム コード カタ、Ruby ソリューションが非常に遅い

最近、Ruby をいじっていて、 http: //codekata.pragprog.com から Anagrams Code Kata を完成させました。

このソリューションはテスト駆動で、独自の素因数分解定理を利用していますが、実行速度が非常に遅いようです。45k ファイルだけで、これまでに約 10 分間実行されています。コードのパフォーマンスを改善するためのヒントを教えてもらえますか?

0 投票する
2 に答える
539 参照

haskell - プロジェクトオイラーの平方アナグラム単語ペア

Haskell でプロジェクト Euler ( here )の「正方形のアナグラム単語ペア」の問題を解決しようとしていますが、行き詰まっています...

問題は次のとおりです(私はそれを短くしました):

  • 「CARE」とそのアナグラムの 1 つ、たとえば「RACE」と言う 1 つの単語を取ります。
  • 「CARE」の各文字を一意の数字に置き換えます。たとえば、C = 1、A = 2、R = 9、E = 6 です。たまたま 1296 であり、平方数です。
  • 同じ置換ポリシーに従ってアナグラムの文字 (「RACE」) を置換すると、これも平方数である 9216 が生成されます。

単語のリストが与えられたとき、そのようなペアのメンバーによって形成される最大の平方数は何ですか?

ファイルからすべてのアナグラムのペアを抽出することができ、それらを [(String,String)] 形式、つまり [("CARE","RACE")..] にしました。

次のステップ (map anasquare) では、単語のペアごとに、[(9216,"CARE","RACE")..] のようになるように、生成できる最大の平方数をリンクします。

まあ、ブルート フォース アプローチを回避するためのトリック (あるに違いない!) がありますが、これまでのところ、私はそれを見つけられませんでした.すべての文字 -> 数字の変換。Haskellでそれを行う方法がわかりません。疲れているのかもしれませんが、これを前にしてはただの唖然としています。それを書くための簡潔でエレガントでありながらあまりにも曖昧ではない方法があるに違いありません.誰かがアイデアを持っていますか?

アナグラム検索とファイル解析機能は割愛します。

0 投票する
1 に答える
96 参照

dictionary - アナグラム辞書の単語はどこで入手できますか?

こんにちはアナグラムクロスワードを実装しています。クロスワードを実装するには、たくさんの辞書の単語が必要です。では、インターネットで大量のアナグラム単語をどこで入手できますか?助けてください

0 投票する
1 に答える
740 参照

data-structures - 与えられた数字の次に大きいアナグラムを見つける

与えられた数の次に大きいアナグラムを見つけるための効率的なアルゴリズムは何でしょうか?

例:

  1. 入力: 7813 -> 出力: 7831
  2. 入力: 3791 -> 出力: 3917
  3. 入力: 4321 -> 出力: (なし)
0 投票する
4 に答える
1416 参照

anagram - これは最高のアナグラムチェックソリューションですか?

2つの文字列がアナグラムであるかどうかを確認するための効率的な解決策を探していますが、charテーブル/辞書の確認はUnicodeの適切な解決策ではない可能性があります。私は解決策を考え出しましたが、それが数学的に正しいことを証明する方法がわかりません。式は、「(a + b)=(c + d)およびXOR b XOR c XOR d = 0 ==>(a、b)および(c、d)はアナグラムです」と表現されています。多分あなたは私を助けることができます。以下は実装です。

0 投票する
1 に答える
1585 参照

python - ファイル内のアナグラムを検索する

ファイル内のアナグラムを検索するプログラムが必要です。例えば:

ファイルには、スペースを含まない単語の長いリストが含まれます。

これは私の現在のコードです:

0 投票する
3 に答える
1783 参照

objective-c - アナグラムを見つけるアルゴリズム

8 文字の単語のグループ内でアナグラムを見つけるアルゴリズムがあります。事実上、長い単語の文字をアルファベット順に並べ替え、短い単語を 1 つずつ同じようにして、長い単語にそれらが存在するかどうかを確認します。

tower = eortw two = otw rot = ort

ここでの問題は、私がortin eortw(または塔で腐敗) を探すと、問題なく見つかるということです。腐敗は塔の中にあります。ただし、中央に R があるため、otw内側eortw(またはタワー内の 2 つ) ではありません。したがって、2 つがタワーにあるとは考えられません。

これを行うためのより良い方法はありますか?私はObjective-Cでそれをやろうとしています.8文字の単語と通常の単語の両方がNSDictionaries(通常の形式とアルファベット順の形式で)に格納されています.

私は他のさまざまな投稿を見てきました。StackOverflow のアナグラムがありますが、この特定の問題に対処しているようには見えません。

これが私がこれまでに持っているものです:

0 投票する
1 に答える
161 参照

java - スタイル (再帰と範囲外の例外が回答されました。これは新しいものです)

私は、2 つの単語または句を取り込んで、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。これがなぜなのかよくわかりません - 誰でも問題を見つけることができますか?