- ベストアンサー
スタックについて
A、B、C、Dの順に到着するデータに対して、一つのスタックだけを用いて出力可能なデータ列はどれか。 ア A、D、B、C イ B、D、A、C ウ C、B、D、A エ D、C、A、B 解答は C B D A (pop) C B → B → → D → → A A A A A となり、ウとなります。 しかし、A、B、C、Dの順に到着するデータということから D C B A とデータが積み上げられることになると思われます。 そうなると、解答もDCBAとなると思われます。 スタックはデータを2つしか積み上げられない ものと考えるのなら問題はないのですが、 疑問が残ります。 長文となりましたが、宜しくお願いいたします。
- KGM
- お礼率44% (66/148)
- 情報処理技術者
- 回答数4
- ありがとう数4
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
#1>全てのデータが到着してから、出力が行なわれないのでしょうか? 問題文では、到着する順について示されていて、出力されるタイミングについては書かれていませんから、全てのデータが到着してからというような条件はありません。(スタックを利用するタイミングに全てのデータが入ってからなどという制限があろうはずもありません) #2>スタックにはデータを入れられる限界があるのでしょうか。 スタックが利用できるサイズについても問題文では示されていないので、無限に使えるもしくは、問題で示されるデータを保持するに充分なサイズがあるとして良いでしょう。 一般的には、 メモリのサイズに制限を受けるし、プログラムと同一のセグメントを使っている場合、プログラムを破壊しない部分までが使えます。
その他の回答 (3)
質問者さんのおっしゃるとおり、D,C,B,Aの順にスタックから出てくる場合もあります。 しかし、回答3でも述べられているように、スタックに入ったデータは、好きなときに取り出すことができます。 なので、この問題では、A,B,Cが入った時点でC,Bを取り出し、Dをスタックに入れ、D,Aと取り出しています。 一つのスタックだけを用いて出力可能なデータ列はどれか。 ~~~~~~~~ とあるので、1つのスタックを用いれば、D,C,B,AやC,B,D,Aの順にデータを取り出すことができます。 選択肢のア、イ、エは、1つのスタックを使ってもデータを選択肢のような順番で取り出すことはできません。 なお、1つのスタックを使うと、回答2で答えられている14通りの方法があります。 このうち、D,C,B,Aの順に取り出す事もできるのですが、それだと、問題が間単になってしまうので、あえてC,B,D,Aを選択肢に入れたのだと思います。
お礼
Dの解答を「DCBA」と勘違いしていました・・・・・ 大変ご迷惑をおかけして申し訳ございません。
- osamuy
- ベストアンサー率42% (1231/2878)
単に、ア・イ・エは、スタックひとつだけだと不可能だから、正解でないというだけでは。 試してみると14通りあるみたいです。 1 A B C D 2 A B D C 3 A C B D 4 A C D B 5 A D C B 6 B A C D 7 B A D C 8 B C A D 9 B C D A 10 B D C A 11 C B A D 12 C B D A 13 C D B A 14 D C B A
お礼
全てのデータを入力しないと、出力は行なわれないのでしょうか? 問題ではABCが到着した時点で、データを取り出しています。 ABCDのデータが到着してから、データを取り出すとすれば DCBAになると思われます。 スタックにはデータを入れられる限界があるのでしょうか。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
ABC まで到着した時にCBを出力し Dが到着してDAを出力すると CBDAになります。 ア、イ、エの回答については、 一番最初に到着したAが 他のデータより先に出力されると言うことが1つのスタックでは考えられないので該当しません。
補足
ABCDが到着したら、その後にDを出力するなど、 全てのデータが到着してから、出力が行なわれない のでしょうか??
関連するQ&A
- 平成16年度の春の問題なんですが
平成16年度の春の問題なんですが A,B,C,Dの順に到着するデータに対して1つのスタックだけを用いて出力可能なデータ列はどれか 回答を見てもどういうことかさっぱりわかりません。 スタックは最後に格納したものから先にとりだせるので DCBAの順で取り出せると思ったんですが・・CBDAの順のようです。 教えて下さい
- ベストアンサー
- 情報処理技術者
- 中1数学
次の問題が途中で行き詰まっているのですが、ヒントを下さる方はいませんか? a,b,c,d,eはどれも0でない数であって次のア,イ,ウ,エ,オを満たします。a~eの正負を答えましょう。 アc-aは負 イdはeより小さい ウ b×cは負 エ a×cはdより小さい。 オ c×dはb×eに等しい アよりc<aですよね。でも正負は解りません。イよりd<eですよね。ウよりbとcは異符号ですよね。エよりac<dですが符号が解りません。オよりcd=beですが、これも符号がわかりません。 答えとしては、aとbが正で、残りは負です。逆算すればわかりますが、解けません。ヒントなどを教えていただけないでしょうか。
- 締切済み
- 数学・算数
- エクセルのデータ抽出です
データの抽出ですが,オートフィルタでは上手くいきません。 データが以下のように配列してあります(ア~は人名が入ります) A B C ア 1 2 3 イ 2 ウ 3 エ 2 3 このような状況からたとえば,3のデータを有するア・ウ・エ(の3名)を一度に抽出することは出来ますでしょうか。
- ベストアンサー
- オフィス系ソフト
- Excelデータ降順 またその隣のセルの値を表示
この度はよろしくお願い致します。 A列に下のような数字があり、この上位3つを大きい順に並べ、またその行のB列C列も引っ張ってくる方法はありますか? A B C 1 6 あ ア 2 9 い イ 3 7 う ウ 4 9 え エ 5 8 お オ ↓ A B C 1 9 い イ 2 9 え エ 3 8 お オ データの昇降以外の、関数での解決を考えています。 お知恵を拝借下さい、よろしくお願い致します。
- ベストアンサー
- Windows XP
- キューとスタックの問題です、宜しくお願いします
(多分基本情報処理に関する問題だと思うのですが)データ構造に関する問題です、いくら考えても分かりません、宜しくお願いします。 【問】空の状態のキューとスタックの二つのデータ構造がある。 次の手続きを順に実行した場合、変数xに代入されるデータはどれか。 ここで、 ・データyをスタックに挿入することをpush(y) ・スタックからデータを取り出すことをpop( ) ・データyをキューに挿入することをenq(y) ・キューからデータを取り出すことをdeq( ) と表す。 (1)push(a) (2)push (b) (3)enq(pop( )) (4)enq(c) (5)push(d) (6)push(dep( )) (7)pop( ) → x 以上の答えとして(6)にはbがスタックにpushされるので、後入れ先出し を考えると当然「xにはb」が入るはずなのですが、どうも答えは「d」となっています。 「d」は「b」より前にスタックされてますので、最新で取出される情報は「b」しかないと思うのですが、誰か誤りを指摘してください、宜しくお願いします。
- ベストアンサー
- その他(パソコン)
- 複数条件の検索
A列に名称、B、C、D、E列に重量、幅、高さ、長さが記入されていて幅、高さ、長さは小さい順ではありません(順不動)。上記のデーター数(名称)は10行くらいです。このとき他の行にB、C、D、Eの数値を打ち込んだときその数値より大きいA列の名称をA列の上から優先で一つ返す方法がありますでしょうか。 データー例 ア 10 2700 2800 10000 イ 20 3500 2600 13000 ウ 20 2000 3200 12000 エ 25 3500 3500 6000 求める結果 ※ 18 2800 2500 10000 の場合※にイを返したいのです。質問がわかりにくいですがより簡単な方法を教えて下さい。
- ベストアンサー
- Windows XP
- 教えてください!!
『SPI 完全対応 適性検査問題 09』(高橋書店)の中に記載されている、判断推理の問題について質問があります!! 問題)X・Y・Zの3個のダイヤモンドがある。そのうち、2個の値段の和は他の1個のダイヤモンドの値段と同じである。Zのダイヤモンドは一番高くない。次のうち、ありえないのはどれですか。 ア:Xは一番高い イ:ZとXは同じ値段だ ウ:YとXは同じ値段だ エ:Yは一番安い オ:ZとXは値段が違う A)アだけ B)イだけ C)ウだけ D)エだけ E)オだけ F)アとイ G)アとエ H)アとオ I)イとエ J)ウとオ K)どれとも言えない 私が思うに、D)が一番ありえないと思ったんです。なぜならば、問題に“Zのダイヤモンドは一番高くない”と書いてあったからです。 しかし、解答を見ると、C)と書いてありました。もちろん解説は読みましたが、納得がいきません。 一番高くない=一番安いという考え方が間違っているのでしょうか? 誰か教えて下さい・・・・よろしくお願い致します。
- ベストアンサー
- 数学・算数
お礼
やっと理解することができました!! 問題文をよく見たら、直ぐ解決することができました。