1 / 14

リスト ( P.28) 線形リスト、単方向リスト データ部とポインタ部からなる データを格納する為に固定領域を確保する必要がない データサイズが変動する場合 は便利なデータ構造

アルゴリズム(第 4 回) 10 月 19 日. <前回の授業> 1.1.2   データ構造(P 16 ~ 38 ). リスト ( P.28) 線形リスト、単方向リスト データ部とポインタ部からなる データを格納する為に固定領域を確保する必要がない データサイズが変動する場合 は便利なデータ構造. スタック ( P.30) データの追加と取り出しを一方向からのみに制限したデータ構造 後入れ先出し( Last In First Out ) LIFO Push ・・・データを追加する Pop  ・・・スタックからデータを取り出す. キュー ( P.32)

claus
Download Presentation

リスト ( P.28) 線形リスト、単方向リスト データ部とポインタ部からなる データを格納する為に固定領域を確保する必要がない データサイズが変動する場合 は便利なデータ構造

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. アルゴリズム(第4回)10月19日 <前回の授業>1.1.2  データ構造(P16~38) リスト(P.28) 線形リスト、単方向リスト データ部とポインタ部からなる データを格納する為に固定領域を確保する必要がない データサイズが変動する場合は便利なデータ構造 スタック(P.30) データの追加と取り出しを一方向からのみに制限したデータ構造 後入れ先出し(Last In First Out)LIFO Push・・・データを追加する Pop ・・・スタックからデータを取り出す キュー(P.32) 待ち行列 先入れ後出し(First In First Out)FIFO

  2. スタックを使って、括弧の対応が正しいかを調べるスタックを使って、括弧の対応が正しいかを調べる スタックを使って、数式の計算をする  3050+412+/ ①数字が現れたら、その数値をスタックに積む ②演算子(+-*/)が現れたら、スタックの上から2つの数字を取り出して、演算子に対応した加減乗除を行い、その結果をスタックに積む

  3. <課題4> スタックとキューの二つのデータ構造がある。(解説)<課題4> スタックとキューの二つのデータ構造がある。(解説) 次の手続きを順に実行した場合、変数Xに代入されるデータは何か。 push(a)→push(b)→enq(pop( ))→push(d) →enq(c)→push(deq( ))       →→→ X ← pop() ここで、  データaをスタックに挿入することを、 push(a)    スタックからデータを取り出すことを、 pop( )  データaをキューに挿入することを、  enq(a)  キューからデータを取り出すことを、deq( )とそれぞれ表す。

  4. <課題5> 図のような単方向リストがある。”東京“がリストの先頭であり、そのポインタに は次のデータのアドレスが入っている。また、”千葉“はリストの最後であり、 そのポインタには0が入っている。アドレス150に置かれた”新小岩“を、”錦糸町“ と”市川“の間に挿入する場合、どのような処理を行えばよいか。

  5. 章末問題(1)P.38 解説 (a) 商品の在庫 (b) トラックの積荷 (c) 小学校の各クラスの人数 (d) 五十音順に並んでいる顧客名簿 FIFO   キュー FILO   スタック  配列  リスト(双方向)

  6. 章末問題(4)解説

  7. 今日の授業  フローチャート(P39) flowchart フローチャートとは、プログラム流れ図のことを示す 処理や作業の流れをわかりやすく図で表現したもの 流れ図記号 (P40) • プログラムにおける一連の演算を表す • 実際に行う演算を示す処理記号 • 論理演算に基づき、それに続く経路を定める記号も含む • 制御の流れを示す線記号 • その他(説明の為の特殊記号)

  8. 今日の授業  フローチャート(P39) flowchart フローチャートとは、プログラム流れ図のことを示す 処理や作業の流れをわかりやすく図で表現したもの 流れ図記号 (P40)

  9. サブルーチン、モジュール 1個以上の命令の集まり 初期設定、スイッチ設定等 1個の入口と2個以上の出口を持つ 複数の処理が並列して行われる 繰り返しの始まりと終わり

  10. 任意のデータ データ入力、データ出力 どれか1個を選択して実行する 流れ図の他の場所へ出力 他の場所からの入口 プログラムの開始と終了

  11. 処理は上から下へ 処理記号の中に複数の処理を書いても良い 同じ処理を表す!

  12. (例) 開始 コメントを書く 処理1 判断? ○を出力 終了

  13. 章末問題(P.48) レポート用紙に各課題を示し、提出しなさい章末問題(P.48) レポート用紙に各課題を示し、提出しなさい <課題6> (P5)図1.2の処理手順をフローチャートで書きなさい。 <課題7>(P48)章末問題(3)  2種類のフローチャート <課題8> (P48)章末問題(1) GP1、GP2、GP3のフローチャートを描きなさい。 また、それぞれの処理の長所と短所について、気がついたところがあれば記せ

More Related