ハッシュ法(チェイン法)
前回説明のハッシュ法(オープンアドレス法)は、ハッシュ衝突が発生した場合、別のハッシュ値を求めそこに格納する。配列で実装した場合であれば、ハッシュ表以上の データ件数を保存することはできない。 チェイン法 チェイン法は、 […]
2次元配列のデータ並び順
2年生のJavaScriptでの実験で、2次元配列のデータ並び順を誤解している人が多かったので、改めて説明。 何気なく、2次元配列を初期化した後、array[y][x] のデータの場所を誤解している。 数学の行列だと、a […]
ハッシュ法(オープンアドレス法)
ハッシュ法 ここまでの授業では、配列(データ検索は、登録順保存ならO(N)、2分探索ならO(log N)となる)、単純リスト(データ検索(シーケンシャルアクセスしかできないのでO(N)となる)、2分探索木( O(log […]
ポート番号とメールが届くまで
ポート番号 サーバとなるコンピュータでは、1台のコンピュータで様々なサービスを提供することから、サービスを区別する必要がある。このためにポート番号が使われる。1台毎のコンピュータに割り当てられたIPアドレスを電話番号に例 […]
ドメイン名とDNS
ドメイン名とDNS インターネットでの通信では、IPプロトコルでコンピュータを指定するが、IPアドレスは無機質で覚えるのが大変であり、コンピュータに名前をつけて利用する。この際に、コンピュータの所属などが分かるようにした […]
情報構造論・後期中間テスト結果の講評
情報構造論のテストが終わり、採点中。今回は、各ページごとに採点中。 設問1のイメージ図は、ほぼ全員が正解。簡単過ぎたか。 設問2でprintf(“\n(%d)\n”,i) で、未だに¥と\が同じこ […]
B木とデータベース
2分探索木の考え方を拡張したもので、B木がある。 B木の構造 2分木では、データの増減で木の組換えの発生頻度が高い。そこで、1つのノード内に複数のデータを一定数覚える方法をとる。B木では、位数=Nに対し、最大2N個のデー […]
JavaScriptの再帰の例題
再帰呼び出しで分割統治法の考え方のプログラムをJavaScriptで書いたサンプル 単純に、配列の指定範囲の合計を求める関数を、再帰を用いて記述する。 <html> <head> </hea […]
データベースの設計と正規形
適切でないデータベースを例にしながら、更新不整合が発生することを説明する。 (不整合には、修正不整合・挿入不整合・削除不整合がある。) この不整合が発生しないデータベース(表)を作るためには、どうすべきかを解説。 ERモ […]
トランスポート層・TCPとUDP
出席確認Forms サブネット同士をつなぐプロトコルとして、IPプロトコルを紹介したが、データ通信ではノイズなどの影響で通信に失敗することがある。これらを補うためのTCPがある。 TCP TCP(Transmission […]