集合とリスト処理
リスト構造は、必要に応じてメモリを確保するデータ構造であり、データ件数に依存しないプログラム が記述できる。その応用として、集合処理を考えてみる。集合処理の記述には、2進数を使った方式やリストを用いた方法が一般的である。 […]
前期期末前の課題レポート
プログラムは書いて・動かして・間違って・直す が重要ということで、以下に前期期末試験前までに取り組むレポート課題をしめす。 レポート課題(プログラム例) Java を用いて、後に示すデータ処理をするためのリスト構造を定義 […]
スタックと待ち行列
前回の授業では、リストの先頭にデータを挿入する処理と、末尾に追加する処理について説明したが、この応用について説明する。 計算処理中に一時的なデータの保存として、スタック(stack)と待ち行列・キュー(queue)がよく […]
Javaでリスト構造
6/24(月)の大雨による休講で7/1(月)に説明 テスト前のリスト導入の復習 前回のリスト構造の導入では、配列のデータに次のデータの入っている番号を添えることで途中にデータを挿入できるデータ構造の説明をした。 また、そ […]
Javaのオブジェクト指向入門
今日は、テスト返しの残り時間で、4年の情報構造論で、リスト構造などの内容を進める前に、3年プログラミング応用でクラスなどに自信がない人向けの簡単レクチャ。 クラスは、データ構造と手続き 例えば、名前と年齢のデータをクラス […]
配列に要素を追加
データが登録済みかどうかを判定する処理を作るために、登録された値を配列に次々と値を追加保存する場合、どのようにプログラムを記述するだろうか? 配列にデータを追加 次々と与えられた値を保存していくのであれば、Java であ […]
情報構造論のレポート課題
情報構造論の前期中間までのレポートとして、自分の理解力に応じて下記課題の1つを選んで回答せよ。ポインタや文字列操作の練習を目的とするため、言語はC言語,C++にて行うこと。 入力の中の特定文字列ABCを、別の文字列DEF […]
ポインタと文字列処理
C言語でのポインター #include <stdio.h> int main() { int x = 123 ; // px [ 〇 ] int* px ; // px はポインタ ↓ px = &x […]
値渡しと参照渡しとポインター
Javaでの引数に対する副作用 Javaでのプログラムにおいて、下記のように関数に引数でデータが渡された場合、呼び出し元の変数が変化する/変化しないの違いが分かるであろうか? import java.util.*; cl […]
再帰呼び出しと処理時間の見積もり
前回の講義で説明できなかった、オーダーの問題の解説 練習問題 の処理時間を要するアルゴリズム(データ件数が変わっても処理時間は一定)を、オーダー記法で書くとどうなるか?また、このような処理時間となるアルゴリズムの例を答え […]