ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

QNo.4014490 c言語 リストデータ構造 キュー スタック がわかりません
質問者:remon2648 ポインタを用いた線形リストデータ構造を利用して,キーボードから順に入力した複数の整数値(int型)を空の「スタック」および「キュー」にそれぞれ保存し,取り出した時,出力される整数値を順に表示するプログラム.
動作確認のために入力する整数値は,年号と月の数字の部分とせよ(2008年5月なら,「2→0→0→8→0→5」の順).また,スタックとキューに保存されているデータがどのような順で出力されるかをそれぞれ表示するようにせよ.(スタックの場合は「5→0→8→0→0→2」の順で出力され,キューの場合は「2→0→0→8→0→5」の順で出力されることを表示させ確認せよ)
こうのようなプログラムを作らなくてはいけないのですが、まったくわかりません。参考にでもソースを教えていただけないでしょうか?
また、詳しく解説されている(初級と中級レベルそれぞれについて)サイトや書籍がありましたらそちらもお願いいたします。
困り度:
  • すぐに回答を!
質問投稿日時:
08/05/11 17:21
最新から表示回答順に表示

回答

ANo.3 リスト構造について説明しているサイトはたくさんありますが、
当方の目についたところを紹介します。

参考URLをごらんになってみてください。
ds02.html では自己参照構造体を説明しています。
同じサイトで、ds03.html 〜 ds06.html というページへ行くと、
リスト構造について説明しています。

リスト構造などのデータ構造やアルゴリズムについての書籍も
たくさんあります。
人によってお薦めの本は異なりますが、当方は柴田望洋氏の
「新版 C言語によるアルゴリズムとデータ構造」あたりが
入門者向けではないかと思います。
回答者:asuncion
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:
08/05/11 21:17
参考URL: http://tdweb.cssa.chs.nihon-u.ac.jp/ds/ds02.html
この回答への補足この回答に補足をつける(質問者のみ)
この回答へのお礼ありがとうございました。あとは、自分でがんばってみたと思います。
今後機会があったらよろしくお願いします。

回答

ANo.2 リスト構造に関する知識はどのくらいお持ちですか?

スタックは「後入れ先出し」ですので、入力データを
リスト構造の先頭につなげていけばよいです。
そして、出力時にはリスト構造の先頭からたどっていきます。
そうすると、後から入力したデータほど先に取り出す、という
仕掛けを実現できます。

一方、キューは「先入れ先出し」ですので、入力データを
リスト構造のおしりにつなげていけばよいです。
そして、出力時にはリスト構造の先頭からたどっていきます。
そうすると、先に入力したデータほど先に取り出す、という
仕掛けを実現できます。
回答者:asuncion
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:
08/05/11 18:58
この回答への補足回答ありがとうございます

 リスト構造については最近勉強し始めたばかりなのですが、知識としては、少しかじった程度だとおもいます。
リスト構造にポインターが入っているとプログラムが何をやってるのかがわからなくなります。ポインターは、基礎的なことしかわかりません。
この回答へのお礼この回答にお礼をつける(質問者のみ)

回答

ANo.1 スタックやキューは、配列でも実装できます。

配列によるスタックやキューを実装するプログラムは書けますか?
回答者:asuncion
種類:補足要求
どんな人:一般人
自信:参考意見
回答日時:
08/05/11 18:25
この回答への補足回答ありがとうございます。

参考書やwebなどで調べながらやれば時間はかかりますが、書けます。
この回答へのお礼この回答にお礼をつける(質問者のみ)
 
最新から表示回答順に表示