• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アルゴリズム・ネストループ方式って何?)

アルゴリズム・ネストループ方式とは?

このQ&Aのポイント
  • アルゴリズム・ネストループ方式は、プログラムの性能改善に使われる手法です。
  • ネストループ方式は、for文などのループを入れ子にして使用する方法で、複数の処理を繰り返し行います。
  • ネストループ方式は効果的な手法ですが、適切に使わないと処理時間が増える可能性があるため注意が必要です。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

ネストループはリレーショナルデータベースでジョインを行うアルゴリズムと してよく知らせています。 RDBMS で使われるネストループのアルゴリズムを簡単に説明すると、ファイル でも表でもいいんですが2つあって、次のような感じのデータが入っていたと します。 ファイル(表)1 ID 名前 3 佐藤 1 鈴木 5 中村 2 高橋 : ファイル(表)2 ID 住所 1 東京都 2 大阪府 3 長野県 4 神奈川県 5 北海道 : ここから 名前 住所 佐藤 長野県 鈴木 東京都 中村 北海道 高橋 大阪府 : という出力を得る場合に、ファイル(表)1の1行目を読み込んで ID が 同じ行をファイル(表)2の先頭行から探していき、ID が同じ行が見つ かったら、ファイル(表)1とファイル(表)2のデータを出力し、ファイル (表)1の次の行の ID と同じ ID を持つ行をファイル(表)2の先頭行から 再度読み込んで探し、.... という繰り返しをするアルゴリズムです。 この方法だと、ファイル(表)1の行数 * ファイル(表)2の行数回の 比較が必要であるのと、ファイル(表)2は1度読み込んだ行をもう一度 読む必要があるので非効率的です。 データがソート済みであったりするともっと効率的なソートマージという アルゴリズムが適用できます。またハッシュを使ったりするようなアルゴリズム もあります。

kanyako
質問者

お礼

回答ありがとうございます。(^_^) なるほど。IDをファイル1から一行ずつ読み込んでファイル2とあわせていけばいいのですね。 とてもわかりやすかったです@ レポートなんで、効率とかは気にしません。自信のある人はハッシュクラスタリングを実装しても良い、とか先生は言うけど自信なんてないし(・_・;) このくらいのプログラミングならできるかな・・・? 卒業がかかっているんでホントありがたかったです。 少しいじってみます。わからなくなったらまたお願いします。

kanyako
質問者

補足

ありがとうございました。 なんとかレポートは完成しました。(^_^)/

その他の回答 (1)

  • asuca
  • ベストアンサー率47% (11786/24626)
回答No.1

ある文の中に同じ文を組み込むことをネスト(入れ子)と呼びます。 ですからネストループとはループの中にループを入れた物です。

関連するQ&A