ITの基礎知識|ITパスポート・基本情報

【ITパスポート試験】の記事一覧

この記事での学習内容 基本情報 応用情報

スタックとキューの考え方、その操作を理解する。

用語例:FIFO、LIFO、プッシュ、ポップ

スタック(LIFO)

スタックは、最後に入れたものを最初に取り出すデータ構造で、LIFO(Last In, First Out:後入れ先出し)ともいいます。

スタックにデータを追加する動作をプッシュ(push)、データを取り出す動作を(pop)といいます。

スタック構造は、逆ポーランド記法の計算やプログラムにおける提携処理の呼び出しと戻りなどに応用されています。

逆ポーランド記法の説明で「コンピュータと相性が良い」と述べていますが、その特徴とスタックというデータ構造は密接に関連しています。

逆ポーランド記法で記述された式を処理する場合、以下のルールでスタックを使った処理を行っています。

  • 数値が来たら、その数値をスタックにPUSHする。
  • 演算子が来たら・・・
    • スタックからデータをPOPする。(データ1)
    • スタックからデータをPOPする。(データ2)
    • データ1とデータ2を演算し、その結果をスタックにPUSHする。

この処理を行うと、最終的にスタックの一番上に一連の式の結果が保存されています。

キュー(FIFO)

キュートは、最初に入れたデータを最初に取り出すデータ構造で、FIFO(First In, First Out:先入れ先出し)ともいいます。

キューにデータを追加する動作をエンキュー(ENQ)、データを取り出す動作をデキュー(DEQ)といいます。

キューは通信において、タイミング調整に使われることがあります。代表的な例として、送信バッファや受信バッファがあります。バッファとは、一時的にデータを入れる場所のことです。

例えば、コンピュータでのデータ受信の際に、インターネット等伝送路からのデータ量が一定していない場合、そのまま受信してしまうとデータ受信ペースの遅れや、瞬間的に大量のデータを受信した場合などで不都合が生じます。このような場合に受信バッファが用いられ、受信したデータを一時的に格納しておき、できるだけコンピュータが受信するデータ量を一定にするようにします。

スタックやキューをプログラムで実現する場合の違い

スタックやキューをプログラムで実装する場合、データ量や用途に応じて配列構造とリスト構造を使い分けます。

配列で実現リストで実現
キュー先頭を指すポインタと最後尾を指すポインタが必要
処理が単純で速い
単方向リストで可能
データあふれの心配がない
スタック最新のデータを示すポインタが必要
処理が単純で速い
単方向リストで可能
データあふれの心配がない

リスト

2017.09.28
この記事での学習内容 ITパスポート 基本情報 応用情報リストの考え方、その操作を理解する。用語例:線形リスト、単方向リスト、双方向リスト、環状リスト、リンク付きリスト配列のデメリットとリスト配列では、要素の追加・挿入をする場合に、挿入する位置以降のすべての要素を1つずつずらす処理が必要になるため、要素の数が大量の場合は処理に時間がかかります。 つまり、要素の追加や削除が非効率...

Read more...

配列

2017.09.28
この記事での学習内容 ITパスポート 基本情報 応用情報配列の考え方を理解し、データの格納方法、取り出し方法などの操作を理解する。用語例:多次元配列、静的配列、動的配列配列コンピュータで大量のデータを高速に処理する場合に、同じ型の変数を、先頭から順番を付けて並べたものを配列といいます。配列におけるそれぞれの変数は「配列要素」または「要素」と呼ばれます。要素にはそれぞれを区別する...

Read more...

データ構造

2017.09.26
この記事での学習内容 ITパスポート 基本情報 応用情報データ構造の考え方、仕組みや、BNFを使用したデータ構造の定義方法を理解する。データ構造「データ構造」とは、コンピュータでデータを系統立てて扱う仕組みをいいます。プログラミングに際して、データ構造の設計はすべての基礎・土台となるものです。目的とする処理が確実に、迅速に実行できるようなデータ構造となるよう、あらかじめ十分検討し設...

Read more...

情報処理技術者試験での学習内容【基本情報・応用情報】 ・データ構造の考え方、仕組みを習得し、応用する。 ・代表的なデータ構造の種類、特徴、操作を習得し応用する。【ITパスポート】 ・データ構造の基本的な考え方を理解する。(1)データ構造 ITパスポート 基本情報 応用情報データ構造の考え方、仕組みや、BNFを使用したデータ構造の定義方法を理解する。(2)データ構造の...

Read more...

文字の表現

2017.09.14
この記事での学習内容 ITパスポート 基本情報 応用情報代表的な文字コードを理解する。用語例: ASCIIコード、EUC(Extended UNIX Code)、JISコード、シフトJISコード、Unicode、UCS文字コードアルファベットやかな、漢字といった文字データを扱うために、コンピュータ内部ではそれぞれの文字に、0と1からなるコード番号を割り当てています。これを文字コード...

Read more...

符号理論

2017.09.14
この記事での学習内容 ITパスポート 基本情報 応用情報アナログとデジタルの特徴、量子化、標本化、A/D変換などの符号化、符号化の目的、情報伝送における信頼性、効率性、安全性の向上などの効果を理解する。用語例:通信路符号化、ハフマン符号、データ圧縮符号化理論符号化とは、データを数値に変換し、情報量として表現することで、コード化ともいいます。符号化理論とは、情報を符号化し、伝送を...

Read more...

情報理論

2017.09.14
この記事での学習内容 ITパスポート 基本情報 応用情報情報量の概念、事象の生起確率と情報量との関係を理解する。情報理論情報理論とは、ある事象における確率や統計を元に、情報の量を数学的に定義する理論です。 生起確率: ある事象 E が起こる確率。 P(E) 情報量:  事象が起こる確率を P(E) とする時、事象が起こったことを知らされた時に得られる(選択できる)情報の量。...

Read more...

情報処理技術者試験での学習内容【基本情報・応用情報】 情報理論、符号理論の考え方、仕組みを習得し、応用する。 コードによる文字の表現を習得し、応用する。 述語論理、形式言語、オートマトンなど、情報に関する理論の考え方、仕組みを習得し、応用する。 正当性理論の考え方、仕組みを習得し、応用する。【応用情報】 AI(人工知能)の考え方、仕組みを習得し、応用する。 コンパイ...

Read more...

待ち行列理論

2017.09.12
この記事での学習内容 ITパスポート 基本情報 応用情報待ち行列理論の構成要素、考え方、M/M/1モデルにおける計算、乱数を利用したシミュレーションを理解する。用語例: サービス時間、到着間隔、平均到着率、平均サービス率待ち行列モデル我々の生活の中では、銀行のATMや行政の窓口、商店のレジなど色々なところで行列が作られています。この待たされる行列のことを待ち行列と呼びます。この顧客...

Read more...