問題タブ [towers-of-hanoi]
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.
java - スタックを使用したJavaのハノイの塔
私はJavaでハノイの塔ゲームをプレイするプログラムを書いています。タワーを表すためにスタックを使用します。3つのスタックのアレイがあります。そのうちの2つは空になるように初期化し、最後の1つはユーザー定義のディスク数で埋めます。整数を取り込んでそのサイズのディスクを作成するHanoiコンストラクターを使用できるように、指定されたHanoiクラスファイルがあります。初期化メソッドでディスクをスタックにプッシュするコードを理解するのに問題があります(ディスクのサイズは位置のミラーであるため、ディスク1のサイズは1などです)。
これが私のハノイクラスのディスクコンストラクターです:
そして私の初期化メソッド
これにより、それらすべてが空になるように初期化されます。では、ユーザー入力に基づいてディスクごとに新しいハノイオブジェクトを作成し、それらを逆の順序でスタックにプッシュする必要がありますか?
prolog - ハノイの塔にカウンターを設置する
私はPrologを使って午前中に予定されているプログラムを持っています。
私はハノイの塔を実装しています。
私が助けを必要としているのは、それが印刷されるたびMove disc number # from _ to _
です。Move X: "String"
文字列が何を移動するかについての前のステートメントであるというカウンターをインクリメントする必要があります。
プログラムの最後に、パズルを完成させるために取った動きの総数を印刷する必要があります。現在、プログラムを再帰的にボトムアップでセットアップしています。
algorithm - すべてのディスクがAにない場合の「ハノイの塔」の解決策
ご存知のように、ハノイの塔を解決する方法はいくつかありますが、最初はすべてのディスクを1つのタワーに配置する必要があります。
今、私はそれを解決する方法があることを知りたいです、そこではディスクは最初にタワーの間ですでにランダムに広がっています。
c++ - ハノイの塔で関数呼び出しを数えますか?
だから私は関数 moveSingleDisk() が呼び出された回数を数えたいのですが、私はそれを理解できないようです...このコードを使用して:
次の出力が得られます。
私は問題を追跡しようとしましたが、再帰により、この種のものを追跡することは非常に困難になります (少なくとも私にとっては)。
どんな助けや説明も大歓迎です!ありがとうございました :)
openmp - このアルゴリズムを OpenMP と並列にする方法は?
C++ で openMP を使用しているときに、もう一度スタックします。今回は並列ハノイタワーを実装してみます。
OpenMp の命令を使用してこのアルゴリズムを並列化する方法は?
java - タワーズ オブ ハノイのカウンター
Towers Of Hanoi ゲームのコードを書きました。このプログラムの実行回数にカウンターを実装する方法がわかりません。どんな助けでも大歓迎です。
java - タワーズ オブ ハノイ ジャワ
これは私が取り組んでいた宿題です。Towers of Hanoi をプレイするための 2 つのクラスを作成しました。1 つ目は、基本的に実際のゲーム クラスを実行するランナーです。
私が助けを必要としているのは、TowersOfHanoi
クラスを自分のクラスから実行することTowersRunner
です。TowersOfHanoi
また、クラスでゲームが終了するまでにゲームの実行にかかった回数を表示するカウンターも実装する必要があります。基本的に私はある行が必要ですSystem.out.println("It took" + counter + "turns to finish.");
カウンターを正しく実装する方法がわかりません。また、 を実行するランナー クラスを作成することはできませんTowersOfHanoi
。クラスはTowersOfHanoi
それ自体で問題なく実行されますが、宿題の要件は、少なくとも 2 つのクラスが必要です。
助けていただければ幸いです!!! 私はJavaの初心者であり、プログラミング全般については、あまり高度にならないようにしてください。:D
java - ハノイの塔のソリューションはO(2 ^ n)よりも優れていますか?
実行時間がO(2 n)未満のハノイの塔のソリューションはありますか?ここで、 nは移動するディスクの数です。私の解決策はO(2 n)時間かかります。
また、以下の解決策は再帰を使用することです。メモ化の概念で動的計画法を使用して、これをより短時間で解決できますか?
MyStack
は、フィールドとアクセサStack
を追加するJavaのクラスの拡張バージョンです。name
また、同じ問題のバリエーションはありますか?
prolog - ハノイの塔(ハノイの塔)
私はこれまでに試したことである、ハノイの塔の問題を実行しようとしています。
しかし、このコードは機能しません。結果を取得する必要があります。次のようになります。
誰かが私のコードを修正するのを手伝ってくれて、そのような結果を得ることができますか?これは私にとって非常に重要です、私は本当に助けが必要です。これは私がしたことですが、いくつかの問題があります:
prolog - ハノイ タワーズ - 別のアウトプット
ハノイの塔の場合、出力は次のようになります。
私はこれを行う方法を知っています:
しかし、次の質問は、「すべての移動後に塔のイラストを提供するようにプログラムを書き直す」ことです。その出力は次のようになります。
これはどのように行うことができますか?