実行しながらデータ構造とアルゴリズムを学ぶ

下のプログラムはMicrosoft Visual Studio Net 2003のC#で記述されています。
Microsoft Visual Studio Net 2005,2008の場合,起動直後に自動変換するかどうかを
問い合わせてきますので,自動変換に「はい」と答えてください。

以下をクリックすると
ダウンロードできます
第1章 1.1 3値の最大値 3値の最大値
1.2 整数の和 while文による整数の和
for文による整数の和
1.3 桁数の表示 桁数の表示
1.4 多重ループ 多重ループ
第2章 2.1 C#の基本データ型 C#の基本データ型
2.2 配列 配列サイズ
配列要素への設定
乱数データを配列要素に設定
最大値を求める
素数の設定
2.3 多次元配列 数値地図
経過日数
2.4 構造体 複素数演算
複素関数のイメージ
構造体の例
構造体配列
第3章 3.1 スタック スタック
3.2 キュー 配列によるキュー
サイクリックなキュー
3.3 動的な領域管理       
3.4 線形リスト 線形リスト(動的な領域管理を含む)
3.5 循環・重連結リスト 循環リスト
重連結リスト
3.6 木構造 木構造
横型探索1
横型探索2
第4章 4.1 線形探索 線形探索
4.2 番兵法 番兵法
4.3 2分探索 2分探索
4.4 計算量        
4.5 ハッシュ法 ソート済み配列の探索
チェイン法
オープンアドレス法
第5章 5.1 再帰の考え方 階乗
ループへの変更
最大公約数
5.2 ハノイの塔 ハノイの塔
5.3 8王妃問題 8王妃問題
5.4 騎士巡回問題 騎士巡回問題
5.5 ナンプレパズル ナンプレパズルを解く
第6章 6.1 ソートの考え方 ソート済み配列のマージ
6.2 単純交換法 色々なソート
6.3 単純選択法
6.4 単純挿入法
6.5 シェルソート
6.6 クイックソート
6.7 マージソート
6.8 ヒープソート
6.9 度数ソート
第7章 7.1 集合とは     
7.2 配列による集合 配列による集合
7.3 ビットベクトルによる集合 ビットベクトルによる集合
第8章 8.1 C#の文字列 文字列の表示
8.2 文字列の基本操作 文字列の操作・探索
8.3 文字列の探索
第9章 9.1 曜日を求める 曜日を求める
9.2 等高線 等高線
等高線(もうひとつの方法)
9.3 陰線消去 陰線消去
9.4 ランダムドット ランダムドット
9.5 色々な曲線/フラクタル スプライン曲線とベジェ曲線
コッホ曲線,立ち枯れ木立,
シェルピンスキーのギャスケット
樹木曲線
ドラゴンカーブ
反復関数系(その1)
反復関数系(その2)
曼荼羅
マンデルブロー・充填ジュリア集合
透過光によるシミュレーション
全般
(1)
C#によるアルゴリズム(アニメ方式)
C#によるアルゴリズムには
実行形式が入っています。
解凍後,解凍したファイル全部を
ハードディスクの適当なフォルダにコピーし,
「C#によるアルゴリズム.exe」を実行すると,
開始します。
全般
(2)
データフローによる実行順序の決定
データフロー図を記述することで,
プロセスの実行順序を決めることができます。
本プログラムを実行させ,
データフロー図を実行させて,
その様子を観察できます。

なお,本プログラムはサンプル版です。階層的なデータフロー記述はできません。
また,実行順序を積極的に制御する方法については,
論文未発表ですので,本プログラムの機能としては含まれていません。
全般
(3)
3D画像処理
3次元描画関係のプログラム例を
参照できます
全般
(4)
テキスト形式による線図形の描画
テキスト形式で図形要素名や座標値を指定して
線画を描くためのプログラムです。
絵を描くことが困難なプログラミング言語を使うとき,
本プログラムとテキストファイルを介すことで,
簡単に絵を描くことができます。
全般
(5)
2次以上の代数方程式のDKA法による複数根
2次以上の代数方程式のDKA法による複数根を求める
C#でのプログラム例を示します。
全般
(6)
CASL/COMETエミュレータ
基本情報処理技術者試験対策用のプログラムです。
アセンブラプログラムのアセンプル,
エミュレータを使えば,
機械語でどのように動くかを体験できます。

この種の試験では,慣れが必要です。
基本情報処理技術者試験を受験される方は,
ぜひダウンロードして,
自分でもCASLでプログラムを書いてみて,
受験に備えてください。