効率のよいメモリ使用と動的メモリ/スタック/malloc+free
次にメモリの利用効率の話について解説する。 配列宣言でサイズは定数 C言語では、配列宣言を行う時は、本来ならば、配列サイズに変数を使うことはできない。 最近のC(C99)では、実は下記のようなものは、裏で後述のalloc […]
ソートのアルゴリズムの分岐点
ソートアルゴリズムの処理時間で、選択法よりクイックソートが有利になる分岐点を求める問題で、 の結果が、N=53.1 になる…との説明が判らないとの質問。# 53.017 が正しいとの結果だったが。 あてずっぽ […]
ソート処理の見積もりとポインタ処理
前回の授業では、再帰処理やソートアルゴリズムの処理時間の見積もりについて説明を行った。 ソート処理の見積もり この際の練習問題の1つめは、「再帰方程式の理解度確認の回答」にて解説を示す。 最後の練習問題はここで説明を行う […]
再帰方程式の理解度確認の解答
再帰呼び出しと再起方程式の資料の中の「理解度確認」の解答 解答 pyraをループで // pyra() をループで書いたら。 int pyra( int x ) { int ans = 0 ; for( int i = […]
再帰呼び出しと再帰方程式
再帰関数と再帰方程式 再帰関数は、自分自身の処理の中に「問題を小さくした」自分自身の呼び出しを含む関数。プログラムには問題が最小となった時の処理があることで、再帰の繰り返しが止まる。 // 階乗 (末尾再帰) int f […]
オーダー記法と再帰処理の導入
先週に、2重の繰り返し処理の時間分析をやったので、次のステップに。 単純forループの分析については、昨年度講義資料を参照。 4/28の講義の質問の回答 2分探索法の処理時間 データを探す処理において、単純検索より速い方 […]
情報構造論の質問の回答
今日は、遠隔授業形式で初めての情報構造論を行った。 ペン書きを交えながらの説明はそれなりにうまくいったかな。 今日は、2重forループの処理時間の分析の説明を行ったけど、最後の説明は次回の授業への橋渡しで(To be c […]
制御構文の理解
コロナ対策で、4年向けの情報構造論も始められないので、自習用資料。 制御構文の理解 基本として、C言語の制御構文の意味をフローチャートで表すと以下のようになる。 条件分岐if 繰り返しwhile, for, do-whi […]
2020年度情報構造論ガイダンス
基本的なガイダンス 情報構造論のシラバスを、ここに示す。プログラムを作成する上で、どのような考え方で作れば処理速度が速いのかを議論する。基本的に、4回のテストのたびに、レポート課題を実施する。各テスト毎の評価は、テスト素 […]
情報構造論2019-講義録
2019年度情報構造論ガイダンス ループ処理時間とオーダー記法と再帰 処理時間のオーダー(回答編) 再帰呼び出しと再帰方程式 ポインタを使った処理 ソートアルゴリズム ポインタの加算と配列アドレス 効率のよいメモリ使用と […]