質問: new stack(); while(!s.empty()) { s1.push(s.pop()); } while(!s1.empty()) { s2.push(s1.pop()); } while(!s2.empty()) { s.push(s2.pop()); } } アルゴリズムは分かっている(つもりな)んですが 本当にこれで動くのか分かりません。 mainも含めたプログラムは教科書に載っていません。 pushとpopの図はたくさんあるのですが、肝心のプログラムが載っていません。 上のであっていますでしょうか? スタックの神様、どうかお助け下さい。m(__)m
回答: 本当に動くか?、あってるか? といわれても、言語仕様も環境もわからない状態では、 「あっている気がする」としか返答できないでしょう。 mainを書けば動作確認できるのなら、 mainで ・stack sを用意 ・sに初期値を設定 ・reverseを実行 ・sの中身を表示 すれば、確認できるかと思いますが。 実際に動作させるのが困難な場合は、コインなどを 使って、手で確認するのが良いです。