タグ付けされた質問 「algorithm」

アルゴリズムは、問題に対する抽象的な解決策を定義する明確に定義された一連のステップです。このタグは、問題がアルゴリズム設計に関連している場合に使用します。


5
カスタム比較述語を使用したheapq
カスタムソート述語を使用してヒープを構築しようとしています。そこに入る値は「ユーザー定義」タイプであるため、組み込みの比較述語を変更することはできません。 次のようなことを行う方法はありますか? h = heapq.heapify([...], key=my_lt_pred) h = heapq.heappush(h, key=my_lt_pred) または、さらに良いことに、heapq関数を自分のコンテナーでラップして、述語を渡し続ける必要がないようにすることもできます。


11
Androidのペルシア語(ShamsiまたはJalali)カレンダー用のライブラリまたはアルゴリズムはありますか?[閉まっている]
閉まっている。この質問は、StackOverflowのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、StackOverflowのトピックになります。 3年前に閉鎖されました。 この質問を改善する Androidのすべてのバージョンで、グレゴリオ暦(西暦)の日付をペルシア語(Shamsi)の日付に、またはその逆に変換したいと思います。 完全で信頼できるライブラリまたはアルゴリズムはありますか?

4
オブジェクトグラフ表現を隣接リストおよびマトリックス表現と比較する
私は現在、技術的なプログラミング面接の準備に関するSteve Yeggeのアドバイスに従っています:http://steve-yegge.blogspot.com/2008/03/get-that-job-at-google.html グラフに関する彼のセクションで、彼は次のように述べています。 メモリ内のグラフを表現するための3つの基本的な方法(オブジェクトとポインタ、マトリックス、および隣接リスト)があり、各表現とその長所と短所をよく理解する必要があります。 行列と隣接リストの表現の長所と短所はCLRSで説明されていますが、これらをオブジェクトの表現と比較するリソースを見つけることができませんでした。 考えてみるだけで、自分で推測することもできますが、大切なことを見逃していないことを確認したいと思います。誰かがこれを包括的に説明できるか、そうするリソースを私に指摘することができれば、私はそれを大いに感謝します。

9
JavaScript:数値のn乗根を計算します
Наэтотвопросестьответынаスタックオーバーフローнарусском:ПолучитькореньN-ойстепени JavaScriptを使用して数値のn乗根を取得しようとしていますが、組み込みMathオブジェクトを使用して取得する方法がわかりません。私は何かを見落としていますか? そうでない場合... この機能を備えた、使用できる数学ライブラリはありますか? そうでない場合... これを自分で行うための最良のアルゴリズムは何ですか?

16
2Dポリゴンの面積を計算するにはどうすればよいですか?
自己交差しない2D空間内の一連の点を想定すると、結果のポリゴンの面積を決定する効率的な方法は何ですか? ちなみに、これは宿題ではなく、コードを探していません。独自のメソッドを実装するために使用できる説明を探しています。ポイントのリストから三角形のシーケンスを引き出すことについての私の考えはありますが、凸多角形と凹多角形に関しては、おそらく捕まえられないエッジケースがたくさんあることを知っています。
81 algorithm  geometry  2d 

5
Pythonで最短の数独ソルバー-どのように機能しますか?
私は自分の数独ソルバーで遊んでいて、これに出くわしたとき、優れた高速設計へのいくつかのポインターを探していました。 def r(a):i=a.find('0');~i or exit(a);[m in[(i-j)%9*(i/9^j/9)*(i/27^j/27|i%9/3^j%9/3)or a[j]for j in range(81)]or r(a[:i]+m+a[i+1:])for m in'%d'%5**18] from sys import*;r(argv[1]) 私自身の実装は、頭の中で数独を解くのと同じ方法で数独を解きますが、この不可解なアルゴリズムはどのように機能しますか? http://scottkirkwood.blogspot.com/2006/07/shortest-sudoku-solver-in-python.html
81 python  algorithm 

5
最小限の操作を計算して、2つのツリー構造を同一にします
これはCSの質問ですが、興味深い質問です。 多かれ少なかれ同じノードが再編成された2つのツリー構造があるとしましょう。どのように見つけますか どれか ある意味で最小限 操作のシーケンス MOVE(A, B) -ノードAをノードBの下に移動します(サブツリー全体を含む) INSERT(N, B)-ノードBの下に新しいノードNを挿入します DELETE (A) -ノードAを削除します(サブツリー全体を含む) これは、あるツリーを別のツリーに変換します。 明らかに、そのような変換が不可能な場合があります。たとえば、ルートAと子Bから、ルートBと子Aなどです。このような場合、アルゴリズムは単に「不可能」な結果をもたらします。 さらに壮観なバージョンは、ネットワークの一般化です。つまり、ノードがツリー内で複数回発生する可能性がある(事実上複数の「親」を持つ)と想定し、サイクルは禁止されています。 免責事項:これは宿題ではありません。実際には実際のビジネス上の問題から来ているので、誰かが解決策を知っているのではないかと思うと非常に興味深いと思いました。

5
Max-Heapifyの最悪の場合-2n / 3を取得するにはどうすればよいですか?
CLRS、第3版、155ページでは、MAX-HEAPIFYでは、 子のサブツリーのサイズはそれぞれ最大2n / 3です。最悪の場合は、ツリーの最下位レベルがちょうど半分いっぱいになったときに発生します。 ツリーの最下層がちょうど半分いっぱいになったときに最悪になる理由を理解しています。また、この質問では、MAX-HEAPIFYの最悪のケースについても回答されています。「最悪のケースは、ツリーの最下位レベルがちょうど半分いっぱいになったときに発生します」 私の質問は、2n / 3を取得する方法ですか? 最下位レベルが半分いっぱいの場合、子ツリーのサイズが最大2n / 3になるのはなぜですか? それを計算する方法は? ありがとう


4
接尾辞木と試行。違いはなんですか?
私はTries一般にプレフィックスツリーとして知られているものについて読んでいSuffix Treesます。 のコードをTrie見つけましたが、の例が見つかりませんSuffix Tree。また、aをビルドするコードTrieは、aのコードと同じであるように感じますがSuffix Tree、前者の場合はプレフィックスを格納し、後者の場合はサフィックスを格納する点が異なります。 これは本当ですか?誰かが私の頭の中でこれをクリアするのを手伝ってくれる?サンプルコードは大いに役立ちます!


7
パーティションからの一意の部分文字列の最大数
タイトルをわかりやすくするために変更しました。 これは質問の詳細なバージョンです: 文字列がs あり、それを部分文字列に分割したいとします。各部分文字列は互いに異なります。1回のカットで取得できる一意の部分文字列の最大数はいくつですか。言い換えれば、formに連結する一意の部分文字列の最大数はいくつですかs。 ここではいくつかの例を示します。 Example 1 s = 'aababaa' output = 4 Explain: we can split `s` into aa|b|aba|a or aab|a|b|aa, and 4 is the max number of substrings we can get from one split. Example 2 s = 'aba' output = 2 Explain: a|ba Example 3 s = …

3
与えられた2つの整数AとBについて、A = X * YおよびB = X xor YとなるようなXとYのペアを見つけます。
私は、競合するプログラミングの本で見つけたこの問題に苦労していますが、それを行う方法の解決策がありません。与えられた2つの整数AとB(64ビット整数型に適合可能)について、Aが奇数の場合、A = X * YとB = X xor YのようなXとYのペアを見つけます。私のアプローチはリストすることでしたAのすべての約数。sqrt(A)の下の数値とsqrt(A)上の数値をペアにして、Aまで乗算し 、それらのxorがBに等しいかどうかを確認します。しかし、それで十分かどうかはわかりません。この問題の良い解決策/アルゴリズムは何でしょうか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.