サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
画力アップ
su10.sgu.ac.jp/~morita
① 配列から基準値となるデータを任意に選ぶ。 ② 基準値と各データを比較し小さければ基準値より前に、大きければ後ろに移動します。 ③ 基準値より前の配列、後ろの配列でそれぞれ再び基準値を選び出し同様の操作を行う。 まず始めに、「基準値」と呼ばれるデータを決定します。幾つか方法がありますが、今回は配列の中央のデータを基準値とします。基準値を各データと比較し、各データのほうが小さければ、そのデータを配列の前のほうに移動し、大きければ後ろのほうに移動します。この操作をすべてのデータに対して行うと、配列の前半には基準値より小さいデータが、後半には大きいデータが入ります。前半のデータ、後半のデータそれぞれで再び基準値を選び、同様の操作を繰り返します。最終的には操作対象の範囲に入る値が1つになりソートが終了します。 例として次のような配列Nがあります。 この配列Nを配列の中央のデータを基準値と
�@ 根(配列の最初、N[1])に必ず最大値が来る。 �A N[1]とN[2]とN[3]、N[2]とN[4]とN[5]というように、N[a],N[2a],N[2a+1]のデータを それぞれ比較した場合、必ずN[a]のデータが一番大きくなる。 という2つの特徴があります。 次のような配列Nがあります。 この配列Nをヒープ構造にすると次のようになります。 この図では配列Nが、ヒープ構造の特徴である、N[a]がN[2a],N[2a+1]よりも大きいとなっているか分かりにくいと思います。そこでヒープ構造は 2分木 を使って表現します。 ヒープ後の配列Nを2分木で表現すると次のようになります。 図を見ると、木の根にあたる部分N[1]がデータの最大値になっています。また、N[1]とN[2]とN[3]、N[2]とN[4]とN[5]というように、N[a],N[2a],N[2a+1]を比較してみると
二分探索は、データが昇順か降順のどちらかにソート済みのとき実行できるアルゴリズムです。データ数が多くても、探索時間が短くてすみます。 考え方 ニ分探索は、データがソートされている必要があります。昇順にソートされている時のニ分探索の基本的な考え方は次のようになります。 �@ 配列の中央のデータと目的のデータを比較します。 �A 中央のデータが目的のデータよりも大きければ、中央より前の配列で �@ と同様の操作を行う 中央のデータが目的のデータよりも小さければ、中央より後ろの配列で �@ と同様の操作を行う まず、中央のデータと目的のデータを比較します。データは昇順にソートされているので、中央のデータが目的のデータよりも大きければ、中央より前の配列に目的のデータがある可能性があります。そこで、前の配列で同様の操作を行います。逆に中央のデータが目的のデータよりも小さければ、後ろの配列に目的
前の説明でRDBは集合演算とRDBのために作成された演算によってデータを操作すると述べましたね。ここでは、その演算を使ってどのようにデータを操作するのかを説明します。SQLを利用する場合には、この演算を使ってデータを操作します。SQLのコマンドについて説明しているわけではありませんのでどのような演算なのか理解しておいてください。 リレーショナルデータベースは表と集合論の概念に基づいて構成されたと前に説明しました。では実際にどのようにデータを操作したらよいのでしょうか?ご安心あれRDBにはデータを操作する演算が用意されています。その演算を関係代数といいます。ここではRDBの操作のために作られよく使われる以下の演算について説明します。
では、正規化の話です。簡単に言って正規化っていうのは、様々な要素から構成されているテーブルを分離させてしまう事です。しかし、勘や経験でテーブルを分離させていてはそれが正しいのか評価する事ができません。正規化の理論はその基準になってくれるものです。 データベースアプリケーションを作成する際には、なるべく避けて通りたくなるところですがテーブルを設計する事は重要ですからしっかり気を引き締めてがんばってください。
このページを最初にブックマークしてみませんか?
『su10.sgu.ac.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く