問題タブ [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.
algorithm - カラーホイール作成機能
これは私が何度も疑似的に解決したことであり、解決策を完全に見つけたことはありません。
問題は、パラメータN
がどこにあるかをできるだけ区別できる色を生成する方法を考え出すことです。N
performance - 最初の 10000 個の素数の最も効率的なコードは?
最初の 10000 個の素数を出力したい。誰でもこれに最も効率的なコードを教えてもらえますか? 説明:
- n >10000 でコードが効率的でないかどうかは問題ではありません。
- コードのサイズは問いません。
- どのような方法でも値をハードコーディングすることはできません。
algorithm - ソートされたリストのソートされた合計を効率的に取得します
数値の昇順リストがあります。これは、そのリスト内の2つの数値ごとの合計の昇順リストを取得するために考えられる最も効率的なアルゴリズムです。結果のリストの重複は関係ありません。必要に応じて、重複を削除するか、回避することができます。
明確にするために、私はアルゴリズムに興味があります。好きな言語とパラダイムでコードを投稿してください。
algorithm - フォローアップ:独自性による色の「並べ替え」
N個の最大距離の色(および関連する距離メトリック)が与えられた場合、最初のMも最大に異なるセットにかなり近いように、それらの色をある順序に並べ替える方法を考え出すことができますか?
言い換えれば、たくさんの異なる色が与えられた場合、最初から必要な数の色を使用できるように順序を考え、それらがすべて異なること、および近くの色も非常に異なることを合理的に保証します(たとえば、青みがかった赤は赤みがかった青の隣ではありません)。
ランダム化は問題ありませんが、確かに最適ではありません。
明確化:大きくて視覚的に異なる色のセット(たとえば、256または1024)が与えられた場合、最初の、たとえば16を使用すると、比較的視覚的に異なる色のサブセットが得られるように並べ替えます。これは、大まかに言って、この1024のリストを並べ替えて、個々の色が視覚的に近くなるほど、リスト上で離れるようにすることと同じです。
algorithm - グラフとツリーを使用して、どのような問題を解決またはより簡単に取り組むことができますか?
これらのデータ構造の両方で解決できる最も一般的な問題は何ですか?
次のような本についての推奨事項もあるとよいでしょう。
- 構造を実装する
- それらを使用するアルゴリズムの推論を実装して説明する
algorithm - Big O さん、どのように計算/概算しますか?
CS の学位を取得したほとんどの人は、 Big O の略語を知っているはずです。アルゴリズムがどれだけうまくスケールするかを測定するのに役立ちます。
しかし、興味深いのは、アルゴリズムの複雑さをどのように計算または概算するのですか?
algorithm - 測定信号のピーク検出
データ取得カードを使用して、信号をピークまで増加させた後、元の値の近くに戻すデバイスから読み取り値を取得します。ピーク値を見つけるために、現在配列を検索して最高の読み取り値を探し、インデックスを使用して計算で使用されるピーク値のタイミングを決定します。
これは、最高値が探しているピークである場合はうまく機能しますが、デバイスが正しく機能していない場合、最初のピークよりも高い 2 番目のピークが表示される可能性があります。90 秒間に 16 台のデバイスから 1 秒間に 10 回の読み取りを行います。
私の最初の考えは、ピークを見つけてピークの配列を構築するために、前と次のポイントが現在よりも小さいかどうかを確認するために読み取りチェックを繰り返すことです。おそらく、システム内のノイズを考慮して、現在の位置の両側の多数のポイントの平均を確認する必要があります。これは続行するための最良の方法ですか、それともより良いテクニックはありますか?
私たちは LabVIEW を使用しており、LAVA フォーラムをチェックしたところ、興味深い例が数多くありました。これは私たちのテスト ソフトウェアの一部であり、非標準の VI ライブラリの使用を避けようとしているため、特定のコードではなく、関連するプロセス/アルゴリズムに関するフィードバックを期待していました。
algorithm - グラフのシリアル化
有向グラフを「シリアル化」する単純なアルゴリズムを探しています。特に、実行順序に相互依存関係がある一連のファイルがあり、コンパイル時に正しい順序を見つけたいと考えています。私はそれがかなり一般的なことであるに違いないことを知っています-コンパイラは常にそれを行います-しかし、私のgoogle-fuは今日弱いです。このための「頼りになる」アルゴリズムは何ですか?
algorithm - 2 つのビー玉と 100 階建ての建物
古典的なプログラミングのインタビューの質問の 1 つ...
あなたは 2 つのビー玉を与えられ、特定の高さから落とすと壊れると言われます (おそらく、その高さより下から落としてもダメージを受けないでしょう)。次に、100 階建ての建物 (おそらく特定の高さよりも高い) に連れて行かれ、ビー玉をできるだけ効率的に壊さずに落とすことができる最上階を見つけるように求められます。
追加情報
- 正しいフロアを見つける必要があります (可能な範囲ではありません)。
- ビー玉は両方とも同じ階で壊れることが保証されています
- 床を変えるのに時間がかからないと仮定します - ビー玉のドロップ数だけがカウントされます
- 正しいフロアが建物内にランダムに分布していると仮定します