2011-08-15 3 views
-3

抽象スタックの助けを借りて抽象キューを逆さまにするのに4nコールがかかるのはなぜですか?誰かがこの質問で私を助けてくれてどうですか?抽象キューを逆さまにスタックで回す

+0

この宿題はありますか? –

+0

いいえ、私は答えを理解していない、その本からの質問は、私はこれまでの私の推論を伝えることができます:抽象的なスタック機能は、削除またはプッシュまたはポップを使用して、抽象キューは「先入れ先出し」を使用するので、n個の要素を持つキューを逆にするには、abcdをdcbaにするためにn個の呼び出しが必要ですが、これは間違っていますか? – user718531

+0

私はdownvoteしなかったし、あなたがなぜそんなにdownvoted得た(私はそれが不快であるとは思わなかった)かなり確信していない。しかし、将来の記事のためのヒント:あなたが元の投稿のコメントからあなたの推論を含んでいたなら、あなたはおそらくダウンボートを得ていないでしょう。 –

答えて

1

ノードを元のキューに入れたいと仮定します。その場合、キューからすべてのノードを一度に1つずつ削除し、それぞれをスタックにプッシュする必要があります。これまでのところ、(キューからの)読み込みとスタックへのプッシュがあります。次に、ノードをスタックからポップしてキューに戻す必要があります。これはノードあたり4つの操作です。

+0

あなたの時間のために非常にありがとう、それは今意味があります! – user718531