もう休み、飽きた。
基本情報の平成30年秋問題を解いていきます。
問題の解き方や考え方をわかりやすく、解説してみ
る連載です。
問5
待ち行列に対する操作を、次のとおり定義する。
ENQ n:待ち行列にデータnを挿入する。
DEQ :待ち行列からデータを取り出す。
空の待ち行列に対し、
ENQ1、ENQ2、ENQ3、DEQ、ENQ4、
ENQ5、DEQ、ENQ6、DEQ、DEQ
の操作を行った。
次にDEQ操作を行ったとき、取り出されるデータ
はどれか。
ア 1
イ 2
ウ 5
エ 6
問6
クイックソートの処理方法を説明したものはどれか。
ア 既に整列済みのデータ列の正しい位置に、デー
タを追加する操作を繰り返していく方法である。
イ データ中の最小値を求め、次にそれを除いた部
分の中から最小値を求める。この操作を繰り返
していく方法である。
ウ 適当な基準値を選び、それより小さな値のグル
ープと大きな値のグループにデータを分割する。
同様にして、グループの中で基準値を選び、そ
れぞれのグループを分割する。この操作を繰り
返していく方法である。
エ 隣り合ったデータの比較と入替えを繰り返すこ
とによって、小さな値のデータを次第に端のほ
うに移していく方法である。
問7
プログラムのコーディング規約に規定する事項のう
ち、適切なものはどれか。
ア 局所変数は、用途が異なる場合でもデータ型が
同じならば、できるだけ同一の変数を使うよう
にする。
イ 処理性能を向上させるために、ループの制御変
数には浮動小数点型変数を使用する。
ウ 同様の計算を何度も繰り返すときは、関数の再
帰呼出しを用いる。
エ 領域割付け関数を使用するときは、割付けがで
きなかったときの処理を記述する。
問8
Javaの特徴に関する説明として、適切なものは
どれか。
ア オブジェクト指向言語であり、複数のスーパク
ラスを指定する多重継承が可能である。
イ 整数や文字は常にクラスとして扱われる。
ウ ポインタ型があるので、メモリ上のアドレスを
直接参照できる。
エ メモリ管理のためのガーベジコレクションの機
能がある。
(解答と解説)
問5
待ち行列はキュー構造(ところてん式)なので
操作 ところてん内
ENQ1 1
ENQ2 12
ENQ3 123
DEQ 23
ENQ4 234
ENQ5 2345
DEQ 345
ENQ6 3456
DEQ 456
DEQ 56
次のDEQは5なのでウが正解です。
問6
クイックソートとバブルソートは覚えておきましょ
お。これは説明そのままウになります。
問7
ア 局所変数は、用途が異なる場合でもデータ型が
同じならば、できるだけ同一の変数を使うよう
にする。
用途が異なる場合は違う変数を使いましょお。
使い回しはよくないです。
イ 処理性能を向上させるために、ループの制御変
数には浮動小数点型変数を使用する。
基本的にコンピュータは小数点嫌いです。
ウ 同様の計算を何度も繰り返すときは、関数の再
帰呼出しを用いる。
再帰はいいんですけど、メモリ食うんですよ。
最悪、オーバーフローするのでダメです。
エ 領域割付け関数を使用するときは、割付けがで
きなかったときの処理を記述する。
正解。領域割付はうまくいくとは限らず、うま
くいかなかった場合動作が厳しくなるので。
問8
Java→ガーベジコレクションと、キーワードを
把握しておいてください。エが正解です。