基本情報技術者試験 -14ページ目

基本的なデータ構造の一つで、

0個以上のデータを順序を付けて格納したコンテナ(コレクション)の一種をリストといいます

(参照引用:e-words


一般的に 配列と呼ばれるリストは、

まず、最大の要素数を格納できるだけのメモリ領域を確保し、

添字(インデックス)で、各要素を 指定します。


例えば、100要素分確保しても実際の格納数が10要素程度だとすると、

残りの90要素分のメモリ領域は、未使用のまま放置されます。


それに対し、

各データが次のデータへの参照(リンク、ポインタ)を持っているもの

連結リスト」あるいは「線形リスト」(linear list)とよびます。


単にリストといった場合は連結リストを意味することが多いです。


リストの要素を格納する領域の他に,次の要素を指し示すための領域が別途必要です。

(単方向リスト)

さらに、前の要素の領域を示す領域を持つリストもあります。(双方向リスト)


実動のメモリー分ですむこと、

そして、配列に比べ、要素の途中への挿入・削除が 容易であるという特徴があります。






待ち行列とは、キュー(queue)と呼ばれることも多いデータ構造です。


入出力が繰り返されるデータは、一時的に貯えておくかたちになりますが、


キューは、何かの処理を待たせる際によく使われる構造で

先に入力したデータが先に出力されるという特徴をもっています。(「FIFO」)


たとえば共有プリンタの印刷待ちや、CPUの計算待ちなどがキュー構造で処理されています。


【基本情報技術者試験 平成25年秋】

午前問5

待ち行列に対する操作を,次のとおり定義する。


 ENQ n:待ち行列にデータnを挿入する。
 DEQ :待ち行列からデータを取り出す。


 空の待ち行列に対し,

ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQ

操作を行った。


次にDEQ操作を行ったとき,取り出される値はどれか。


ア.1 イ.2 ウ.5 エ.6


【解説】


待ち行列ですので 先入れ先出し という原則で Qの中身を考えます


① ENQ1,ENQ2,ENQ3,では データの保存になりますので 

下記のようなイメージ図になります。


------------------------------

入口 ⇒ 3   2    1   ⇒出口

------------------------------


②DEQ

先に 入ったデータの 取り出しが行われます。

その際 一番先に入ったデータから 取り出されますので

下記のようなイメージで 残ります。

------------------------------

入口 ⇒ 3   2   ⇒ 出口         

------------------------------


③ENQ4,ENQ5,DEQ,

4,5の入力の後、2が 取り出されます

------------------------------

入口 ⇒ 5 4 3  ⇒ 出口         

------------------------------


ENQ6,DEQ,DEQ


6を入力後 先の2つのデータの抽出

--------------------------

入口 ⇒ 6 5  ⇒ 出口         

--------------------------


次にDEQ操作を行ったとき,取り出される値

一番出口に近い値(先に入力された値)が取り出されます


ので 正答は 5 になります。


【正答】 ウ



PCMPulse Code Modulationとは

音声などのアナログ信号デジタルデータに変換する方式の一つです。



PCM 伝送方式とは、具体的にいうと

アナログの信号を、一定時間ごとに標本化(サンプリング)し、

定められたビット数の整数値に量子化し、

さらにそれを2進数(0,1)であらわす符号として、伝送する方式です。



【基本情報技術者試験 平成25年秋】

午前問4

PCM伝送方式によって
音声をサンプリング(標本化)して8ビットのディジタルデータに変換し、
圧縮処理をしないで転送したところ、
転送速度は64,000ビット/秒であった。

このときサンプリング間隔は何マイクロ秒か。

ア.15.6 イ.46.8 ウ.125 エ.128


【解説】
まず、1秒間あたりのサンプリング回数(8ビット)を求めます。
64000(ビット) ÷ 8(ビット) = 8000 (サンプリング回数/秒)

1秒間に8,000回のサンプリングを行うとすると
1サンプリングに かかる時間

1(秒)  ÷ 8000(サンプリング回数) = 125×10-6

マイクロ秒とは 10-6秒ですから、 125マイクロ秒が 正解となります。

【正答】 ウ