問題タブ [algorithm]

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 投票する
8 に答える
18362 参照

algorithm - カラーホイール作成機能

これは私が何度も疑似的に解決したことであり、解決策を完全に見つけたことはありません。

問題は、パラメータNがどこにあるかをできるだけ区別できる色を生成する方法を考え出すことです。N

0 投票する
30 に答える
69235 参照

performance - 最初の 10000 個の素数の最も効率的なコードは?

最初の 10000 個の素数を出力したい。誰でもこれに最も効率的なコードを教えてもらえますか? 説明:

  1. n >10000 でコードが効率的でないかどうかは問題ではありません。
  2. コードのサイズは問いません。
  3. どのような方法でも値をハードコーディングすることはできません。
0 投票する
8 に答える
3403 参照

algorithm - ソートされたリストのソートされた合計を効率的に取得します

数値の昇順リストがあります。これは、そのリスト内の2つの数値ごとの合計の昇順リストを取得するために考えられる最も効率的なアルゴリズムです。結果のリストの重複は関係ありません。必要に応じて、重複を削除するか、回避することができます。

明確にするために、私はアルゴリズムに興味があります。好きな言語とパラダイムでコードを投稿してください。

0 投票する
9 に答える
2749 参照

algorithm - フォローアップ:独自性による色の「並べ替え」

元の質問

N個の最大距離の色(および関連する距離メトリック)が与えられた場合、最初のMも最大に異なるセットにかなり近いように、それらの色をある順序に並べ替える方法を考え出すことができますか?

言い換えれば、たくさんの異なる色が与えられた場合、最初から必要な数の色を使用できるように順序を考え、それらがすべて異なること、および近くの色も非常に異なることを合理的に保証します(たとえば、青みがかった赤は赤みがかった青の隣ではありません)。

ランダム化は問題ありませんが、確かに最適ではありません。

明確化:大きくて視覚的に異なる色のセット(たとえば、256または1024)が与えられた場合、最初の、たとえば16を使用すると、比較的視覚的に異なる色のサブセットが得られるように並べ替えます。これは、大まかに言って、この1024のリストを並べ替えて、個々の色が視覚的に近くなるほど、リスト上で離れるようにすることと同じです。

0 投票する
10 に答える
5467 参照

algorithm - グラフとツリーを使用して、どのような問題を解決またはより簡単に取り組むことができますか?

これらのデータ構造の両方で解決できる最も一般的な問題は何ですか?

次のような本についての推奨事項もあるとよいでしょう。

  • 構造を実装する
  • それらを使用するアルゴリズムの推論を実装して説明する
0 投票する
24 に答える
479364 参照

algorithm - Big O さん、どのように計算/概算しますか?

CS の学位を取得したほとんどの人は、 Big O の略語を知っているはずです。アルゴリズムがどれだけうまくスケールするかを測定するのに役立ちます。

しかし、興味深いのは、アルゴリズムの複雑さをどのよう計算または概算するのですか?

0 投票する
9 に答える
59785 参照

algorithm - 測定信号のピーク検出

データ取得カードを使用して、信号をピークまで増加させた後、元の値の近くに戻すデバイスから読み取り値を取得します。ピーク値を見つけるために、現在配列を検索して最高の読み取り値を探し、インデックスを使用して計算で使用されるピーク値のタイミングを決定します。

これは、最高値が探しているピークである場合はうまく機能しますが、デバイスが正しく機能していない場合、最初のピークよりも高い 2 番目のピークが表示される可能性があります。90 秒間に 16 台のデバイスから 1 秒間に 10 回の読み取りを行います。

私の最初の考えは、ピークを見つけてピークの配列を構築するために、前と次のポイントが現在よりも小さいかどうかを確認するために読み取りチェックを繰り返すことです。おそらく、システム内のノイズを考慮して、現在の位置の両側の多数のポイントの平均を確認する必要があります。これは続行するための最良の方法ですか、それともより良いテクニックはありますか?


私たちは LabVIEW を使用しており、LAVA フォーラムをチェックしたところ、興味深い例が数多くありました。これは私たちのテスト ソフトウェアの一部であり、非標準の VI ライブラリの使用を避けようとしているため、特定のコードではなく、関連するプロセス/アルゴリズムに関するフィードバックを期待していました。

0 投票する
4 に答える
44131 参照

algorithm - グラフのシリアル化

有向グラフを「シリアル化」する単純なアルゴリズムを探しています。特に、実行順序に相互依存関係がある一連のファイルがあり、コンパイル時に正しい順序を見つけたいと考えています。私はそれがかなり一般的なことであるに違いないことを知っています-コンパイラは常にそれを行います-しかし、私のgoogle-fuは今日弱いです。このための「頼りになる」アルゴリズムは何ですか?

0 投票する
10 に答える
18473 参照

algorithm - 2 つのビー玉と 100 階建ての建物

古典的なプログラミングのインタビューの質問の 1 つ...

あなたは 2 つのビー玉を与えられ、特定の高さから落とすと壊れると言われます (おそらく、その高さより下から落としてもダメージを受けないでしょう)。次に、100 階建ての建物 (おそらく特定の高さよりも高い) に連れて行かれ、ビー玉をできるだけ効率的に壊さずに落とすことができる最上階を見つけるように求められます。

追加情報

  • 正しいフロアを見つける必要があります (可能な範囲ではありません)。
  • ビー玉は両方とも同じ階で壊れることが保証されています
  • 床を変えるのに時間がかからないと仮定します - ビー玉のドロップ数だけがカウントされます
  • 正しいフロアが建物内にランダムに分布していると仮定します
0 投票する
6 に答える
30953 参照

algorithm - パズル:最大の長方形を見つける(最大の長方形の問題)

空のスペースに収まる最大の面積を持つ長方形を見つけるための最も効率的なアルゴリズムは何ですか?

画面が次のようになっているとしましょう(「#」は塗りつぶされた領域を表します):

考えられる解決策は次のとおりです。

通常、私は解決策を考え出すのを楽しんでいます。今回は自分で手探りで時間を無駄にしないようにしたいと思いますが、これは自分が取り組んでいるプロジェクトに実用的であるためです。よく知られている解決策はありますか?

Shog9は書いた:

入力は配列(他の応答によって暗示される)ですか、それとも任意のサイズの配置された長方形の形式のオクルージョンのリストですか(ウィンドウ位置を処理するときのウィンドウシステムの場合のように)?

はい、画面に配置された一連のウィンドウを追跡する構造があります。また、空か塗りつぶしかを問わず、各エッジ間のすべての領域と、左エッジまたは上端のピクセル位置を追跡するグリッドもあります。この特性を利用する修正された形式があると思います。何か知っていますか?