入れ子構造とは? わかりやすく解説

Weblio 辞書 > 同じ種類の言葉 > 言葉 > 状態 > 構造 > 入れ子構造の意味・解説 

入れ子構造

★1a.入れ子構造の人間たち

『続斉諧記』呉均)2「腹の中恋人陽羨鵞籠)」 旅で道連れになった男が、口の中から、酒食入った盆・箱と若い女とを吐き出す。男が酔って眠ると、女は口の中から愛人である青年吐き出す青年はまた口の中から自分恋人吐き出すしばらくして青年恋人呑みこみ、女が青年呑みこみ、男が女と食器類を呑みこんで、去って行く〔*類話である西鶴諸国ばなし2-4「残る物とて金の鍋」では構造単純化されており、仙人酒食美女吐き美女恋人若衆を吐くが、若衆は何も吐き出さない〕。

★1b.入れ子構造の人間たち正体

『太平広記』386所引『玄怪録』 北周時代6世紀)。居延部落の長・勃都骨低の邸に、数十人の芸人訪れた。彼らは、背の高い者が低い者を呑み込み肥った者が痩せた者を呑み込み互い呑み合って2人だけが残る、という芸を見せた次いで彼らは、呑み込んだ者を吐き出し始めた吐き出された者がまた1人吐き出し次々に人を吐き出して人数がもとにもどった。彼らは人間ではなく、その正体数多く皮袋だった。

★2.入れ子構造の女性器

女体消滅澁澤龍彦唐草物語』) 中納言長谷雄は鬼から女を与えられ(*→〔百〕1の『長谷草子』)、80日目夜に女の下紐解いて朱門(=女性器)を見る。すると朱門の奥にまた朱門があり、稲荷鳥居のごとく朱門ずらりと重なって、無限の入れ子構造になっていた。長谷雄は、自分の陽鋒(=男性器)で第1の朱門突破しよう試みる。たちまち女体消滅して化し長谷雄は全身びしょぬれになった

★3.入れ子構造の動物

『異苑』77の中からが出る」 男が1匹の捕らえて腹を割くと、中からまたが1匹出てきた。その腹を割いたら、また出た。その腹を割いて、ようやく臓物出た。3匹の不思議なことに、みな同じ大きさだった。

★4.入れ子構造の戯曲

『呪はれた戯曲谷崎潤一郎作家が妻を山中に連れて行き自作戯曲読み聞かせるその内容は、「作家が妻を山中に連れて行き自作戯曲(『作家が妻を山中に連れて行き自作戯曲読み聞かせその後、妻を谷底突き落として、事故死のように見せかける』という内容)を読み聞かせその後戯曲どおりに妻を谷底突き落とし事故死のように見せかける」というものである作家戯曲読み聞かせた後、戯曲どおりに妻を谷底突き落として、事故死のように見せかける

★5.夢の中夢の中の夢。入れ子構造の夢。

神の書跡』ボルヘス虜囚「わたし」は、牢の床に砂が1粒落ちている夢を見る夢を見るたびに砂は2粒、3粒と増えてゆき、やがて無数の砂粒「わたし」死にそうになる目覚めても砂はある。誰かが「わたし」に、「汝は真に目覚めたのでなく、前の夢へと目覚めたのだ。その夢はまたもう1つ夢の中にある。無限に夢が重なるのだ」と告げる。

三段式』星新一さまざまな迷路』) 宇宙1人航行する飛行士退屈しのぎに、3段式の睡眠薬開発された。刃物を持つ男たち追われる夢を見てハッと目覚めると、戦場敵軍包囲されていた。しかしそれも夢で、そこから目覚めると、今度大洪水押し寄せて来る。それでもまだ夢の中であり、もう1度目覚めて、やっと現実宇宙船内に戻れた。夢から目覚めること3度で、ようやく現実世界帰還できるのだ。

スマラ(夜の霊)』ノディエ新妻リシディスとともに眠るロレンツォは、ギリシア時代人物ルキウス(*→『黄金のろば』の主人公)になった夢を見る。そのルキウスは、馬に揺られつつ夢を見てコリントス戦で死んだ友人ポレモンに出会う。ポレモンは、魔女メロエと夜の霊スマラ苦しめられる悪夢ルキウス(=ロレンツォ)に語る。うなされるロレンツォを、新妻リシディスが目覚めさせよう呼びかける

*入れ子構造の記憶→〔ミイラ〕2の『木乃伊ミイラ)』(中島敦)。


ネスティング

(入れ子構造 から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/05/30 22:40 UTC 版)

マトリョーシカ人形
プログラムの記述と比較してみると似ていることが分かる(参照1)(参照2

構造化プログラミングにおけるネスティング: Nesting)、ネスト入れ子とは、プログラムの構造が再帰的に繰り返されて記述されること。このような構造をネスト構造: Nested structure)、入れ子構造と呼ぶ。この記事ではC言語風の擬似コードを用いるが、ネスティングの概念はC言語に限らない。また、名前空間などC言語にない機能についても記述している。

概要

ネスティングには主に次の3パターンが存在する。

例えば、二分木と呼ばれるデータ構造はデータ構造のネスティングの好例である。

制御構造におけるネスティング

制御構造分岐命令ループ命令)のネスティング。スコープが入れ子になっている。

条件文のネスティング

以下の例では条件式1を判定して判定結果が""であるなら条件式2を判定し、条件式2の判定結果も""なら条件式3を判定する。条件式3も同様に判定結果が""であるなら処理1、処理2、処理3を全て処理した後に入れ子から脱出するが、それまでに条件式2が""なら処理3だけを、条件式3が""なら処理2と処理3をして入れ子から脱出する。


C言語風での記述)

if (条件式1){
   if (条件式2){     // ここの「if」は一番上の「if」の入れ子
      if (条件式3){   // ここの「if」は一つ上の「if」と一番上の「if」の入れ子
         処理1;
      }
      処理2;
   }
  処理3;
}

ループ文のネスティング

基本的に上述の条件文と動きが似ているため、記述も似ている。ループ文同士での入れ子はループ文を多用するために、プログラミングのミスによるバグの一つである無限ループが発生しやすくなる。

一番外側から順番に条件式を判定して行き、条件式の値が満たされなくなるまで内側の処理を繰り返していく。

C言語風での記述)

for (int x = 0; 条件式1; x++){
   for (int y = 0; 条件式2; y++){   //ここの「for」は一番上の「for」の入れ子
      for (int z = 0; 条件式3; z++){ //ここの「for」は一つ上の「for」と一番上の「for」の入れ子
          処理1;
      }
      処理2
   }
   処理3;
}

ループ文と条件文が混合したネスティング

一番外側から順番に条件式を判定して行き、条件式の値が満たされなくなるまで内側の処理を繰り返していく。ただし外側から二番目のループ文では、条件式3の判定結果がのときは処理1を、のときは処理2を処理する。

C言語風での記述)

for (int x = 0; 条件式1; x++){
   for (int y = 0; 条件式2; y++){ //ここの「for」は一番上の「for」の入れ子
      if (条件式3){                //ここの「if」は一つ上の「for」と一番上の「for」の入れ子
          処理1;
      }
      else{
          処理2;
      }
  }
}

データ構造におけるネスティング

構造体クラスインタフェースにおけるネスティング。

構造体のネスティング

構造体がメンバとして何らかの構造体を持っている状態は、構造体をネストしていると言える。

struct Point
{
	int x;
	int y;
};

struct BitmapImage
{
	struct Point size;
	unsigned char *image;
};

副プログラムにおけるネスティング

サブルーチンプロシージャコルーチンにおけるネスティング。単に別のサブルーチンなどを呼び出すだけの場合や再帰呼び出しを指す場合もある。

サブルーチンのネスティング

以下の例はgccでのみコンパイル可能。

void message(void){
	void hello(){  }// ネストされた関数定義
	hello(); //ネストされた関数の呼び出し
}
//ここではhello()は呼び出せない

名前空間のネスティング

記述方法は先述のデータ構造の入れ子に酷似している。名前空間を分けることでサブルーチンなどの名称が競合するのを防止する。ちなみに、C言語には名前空間の機能はない。

namespace 名前空間1{
	namespace 名前空間2{
		int func(){} //名前空間1::名前空間2::func()のようにアクセスさせることが多い
	}
}

関連項目

プログラミング

その他

外部リンク


入れ子構造(いれここうぞう)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/02/14 04:28 UTC 版)

半沢直樹シリーズ」の記事における「入れ子構造(いれここうぞう)」の解説

一つ看板二つ組織があること。東京中央銀行も、東京中央銀行という一つ看板に、旧Sと旧Tの二つ組織がある。都市銀行合併すると、同じ場所に二つ店舗重なる時がある。そうした場合有力な方を残し、もう片方は廃店にするのである

※この「入れ子構造(いれここうぞう)」の解説は、「半沢直樹シリーズ」の解説の一部です。
「入れ子構造(いれここうぞう)」を含む「半沢直樹シリーズ」の記事については、「半沢直樹シリーズ」の概要を参照ください。

ウィキペディア小見出し辞書の「入れ子構造」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



入れ子構造と同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「入れ子構造」の関連用語

入れ子構造のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



入れ子構造のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
物語要素事典物語要素事典
Copyright (C) 2025 物語要素事典 All rights reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのネスティング (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの半沢直樹シリーズ (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS