問題タブ [gray-code]

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

algorithm - サブセットを生成する最も効率的な方法は何ですか?

私がやりたいことは次のとおりです。

入力: n、たとえば n = 3

出力: {000, 001, 010, 011, 100, 101, 110, 111}、すべてのサブセットを生成し、サブセットの順序は気にしません

私はアルゴリズムを実装しました:

私は、Gray Code がこのようなことを実行できることを知っています。しかし、サブセットを生成する最も効率的な方法はどれですか?

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

gray-code - グレーコードが反射コードと呼ばれるのはなぜですか?

各グレー コードが前のコードと 1 ビット異なることは理解していますが、なぜそれが反射と呼ばれるのか正確にはわかりません。この Web サイトhttps://www.pc-control.co.uk/gray_code.htmに出くわしました。「グレイ コードは、最初の 8 つの値が最後の 8 つの値と比較されるため、反映されたバイナリと呼ばれることがあります。値ですが、逆順です」が、Web サイトのグレー コード表からわかるように、最初の 8 つのグレー コードは逆順の最後の 8 つのグレー コードとは比較できません。私の混乱に加えて、グレーコード表は私の教科書のグレーコード表とは異なります.

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

java - 2 つの 16 進数が与えられた場合、それらがグレイ コードで連続しているかどうかを調べます

「グレーコードで連続」とはどういう意味ですか? 10 と 11 は 10 進法で連続しているということですが、「グレイコードで連続」とはどういう意味ですか? 私が知っているのは、グレイ コードが 2 つの連続する値が 1 ビットだけ異なる 2 進数システムであることだけです。

ここにオンラインの解決策がありますが、これを理解できません

1時間を費やして理解しようとしていますが、まだ手がかりがありません。

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

vhdl - VHDL の 3 ビット有限ステート マシン

これがコード全体です

誰かがエラーの原因を教えてもらえますか? 私はそれを理解していません。(「when」付近の構文エラー。)

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

netlogo - Netlogo: グレイ コードをバイナリに変換する

私は遺伝的アルゴリズムを使用して、Netlogo モデルの生存を決定しています。GA の最終的な出力は、0 から 1 までの 10 進数です。クロスオーバー / ミューテーションの目的で、2 進数ではなくグレー コードを使用する必要があります。バイナリを10進数に変換する関数がありますが、グレイコードをバイナリに変換する関数はありません(苦労しました)。

グレイコードをバイナリ関数にコーディングする方法について何か提案はありますか?

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

bit-manipulation - (n-1) 番目のグレイ コードから n 番目のグレイ コードを導出する

(n-1) 番目のグレイ コードのビット操作を使用して、(n-1) 番目のグレイ コードを使用して 4 ビットの n 番目のグレイ コードを導出する方法はありますか?

たとえば、4 番目のグレイ コードは 0010 です。今度は、0010 に対してビット演算を実行して、5 番目のグレイ コード 0110 を取得したいと考えています。

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

algorithm - ビット フリップを使用してすべての数値を k ビットで反復処理するアルゴリズム

一度に1ビットずつ反転することにより、最大kビットが設定されているすべてのnビットの非負の整数を反復処理する効率的な方法を探しています。

最大で k ビットが設定された n ビットの非負の整数すべてを反復処理するために必要なビット フリップの最小数は?

k = n の場合、つまり、すべての n ビットの非負の整数を反復処理したい場合は、グレイ コードを使用できます。これには、新しい数値を取得するために 1 ビットだけを変更するという優れた特性があります。ただし、これは通常、k < n の場合、k ビットを超える整数を使用します。