データ構造と アルゴリズム 第六回 知能情報学部 新田直也.

Slides:



Advertisements
Similar presentations
データ構造とプログラミング技 法 (第3回) ー木構造ー. 木構造 (1) 根( root )と呼ばれる節 R が、 1 つだけ含まれ る。 R … TmTm T1T1 木構造: 1 個以上の節の有限集合 T であり、 次の二つの条件を満足するもの (2) 根以外の節は、 m (≧ 0 )個の互いに素な部.
Advertisements

アルゴリズムとデータ構造 第2回 線形リスト(復習).
区間グラフにおける区間表現からMPQ-treeを効率よく構成するアルゴリズム
アルゴリズムとデータ構造 2011年7月7日
正規表現からのDFA直接構成.
2 分探索木 Binary Search Tree 実行可能な操作 計算量 木の高さは,最悪 O(n) n = |A| : 要素の個数
アルゴリズムとデータ構造 第8回 ソート(3).
アルゴリズムとデータ構造 2013年6月18日
On the Enumeration of Colored Trees
アルゴリズムとデータ構造 第2章 リスト構造 5月17日分
アルゴリズムとデータ構造 補足資料13-4 「2分探索木の追加・削除(ダイジェスト)」
アルゴリズムとデータ構造 2012年6月14日
情報工学概論 (アルゴリズムとデータ構造)
データ構造とアルゴリズム 第7回 木 ~ データ構造(3)~.
データ構造とアルゴリズム 第6回の2 木 ~ データ構造(3)~.
ヒープソートの復習.
データ構造と アルゴリズム 第八回 知能情報学部 新田直也.
s a b f c e d 2016年度 有限幾何学 期末試験 問1:15点
大岩 元 慶応大学環境情報学部 二分木 データ構造とプログラミング(10) 大岩 元 慶応大学環境情報学部
アルゴリズムとデータ構造 2011年6月14日
データ構造と アルゴリズム 第十一回 理工学部 情報システム工学科 新田直也.
データ構造と アルゴリズム 第四回 知能情報学部 新田直也.
データ構造とアルゴリズム論 第9章 木構造 平成17年12月20日 森田 彦.
アルゴリズムとデータ構造 2012年7月12日
二分探索木によるサーチ.
2009/10/16 いろいろなデータ構造 第3講: 平成21年10月16日 (金) 4限 E252教室 コンピュータアルゴリズム.
算法数理工学 第3回 定兼 邦彦.
Cプログラミング演習 中間まとめ2.
アルゴリズムとデータ構造 2011年7月4日
データ構造とアルゴリズム 第4回 リスト ~ データ構造(1)~.
“Purely Functional Data Structures” セミナー
アルゴリズムとデータ構造1 2006年6月16日
二分木のメソッド(続き).
木の走査.
オブジェクト指向 プログラミング 第七回 知能情報学部 新田直也.
二分探索木における要素削除 データ構造とプログラミング(10)
データ構造とアルゴリズム (第3回) ー木構造ー.
第9回 優先度つき待ち行列,ヒープ,二分探索木
b f c a d e g h a b c d e f g 図1 図2 2012年度 有限幾何学 期末試験
データ構造と アルゴリズム 第七回 知能情報学部 新田直也.
データ構造と アルゴリズム 第五回 知能情報学部 新田直也.
A Simple Algorithm for Generating Unordered Rooted Trees
離散数学 07. 木 五島.
Cプログラミング演習 第10回 二分探索木.
データ構造とアルゴリズム論 第9章 木構造 平成29年12月20日 森田 彦.
データ構造とアルゴリズム論 第9章 木構造 平成30年6月27日 森田 彦.
オブジェクト指向 プログラミング 第六回 知能情報学部 新田直也.
プログラミング 4 木構造とヒープ.
簡易データベース 情報画像工学実験 I : 実験2 担当:関屋大雄(工学部1号棟515室)
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
15.cons と種々のデータ構造.
データ構造とアルゴリズム 第11回 リスト構造(1)
アルゴリズムとデータ構造 第2章 リスト構造 5月20日分
アルゴリズムとデータ構造 第3章 ヒープ 5月31日分
アルゴリズムとデータ構造 第3章 ヒープ 5月31日分の復習
情報数理Ⅱ 第11章 データ構造 平成29年1月18日.
オブジェクト指向 プログラミング 第六回 知能情報学部 新田直也.
第9回 優先度つき待ち行列,ヒープ,二分探索木
アルゴリズムとデータ構造 2012年7月2日
基本情報技術概論(第6回) 埼玉大学 理工学研究科 堀山 貴史
ヒープソートの復習 第12回.
情報工学概論 (アルゴリズムとデータ構造)
アルゴリズムとデータ構造 2013年7月2日
アルゴリズムとデータ構造 2013年7月8日
アルゴリズムとデータ構造 第2章 リスト構造 5月24日分
データ構造と アルゴリズム 第四回 知能情報学部 新田直也.
データ構造と アルゴリズムI 第三回 知能情報学部 新田直也.
オブジェクト指向 プログラミング 第六回 知能情報学部 新田直也.
7.木構造 7-1.データ構造としての木 7-2.2分探索木 7-3.高度な木.
アルゴリズムとデータ構造 2012年7月9日
Presentation transcript:

データ構造と アルゴリズム 第六回 知能情報学部 新田直也

双方向リスト 連結リスト 双方向リスト

双方向リストの構造体 struct CELL { int value; struct CELL *next; struct CELL *prev; } 内容 1ページに相当 (構造体) 次ページのアドレス 前ページのアドレス CELL value next prev

双方向リストの insert insert(k,e)は? 新しいページのURLを r とすると… r->next = p; ※ p は k 個目の要素を指す *(p->prev) p *p p->prev->value p->value p->prev->next p->next p->prev->prev p->prev 新しいページのURLを r とすると… r->next = p; r->prev = p->prev; p->prev->next = r; p->prev = r; r->value r->next r->prev

双方向リストの delete delete(k)は? p->next->prev = p->prev; ※ p は k 個目の要素を指す *(p->prev) p *p *(p->next) p->prev->value p->value p->next->value p->prev->next p->next p->next->next p->prev->prev p->prev p-next->prev p->next->prev = p->prev; p->prev->next = p->next;

木構造 木: 閉路(サイクル)を持たない連結グラフ. 節,ノード,頂点 辺,エッジ 閉路 →「木」である →「木」でない

木構造の例 木は典型的なデータ構造 ファイルシステム 数式 組織図 系統樹 図形のグルーピング : (a + b) * c + (d / e) * + a b c / d e

各部の名称(1) ラベル,根,葉,親,子,兄弟: (a + b) * c + (d / e) ラベル 根 + 親 * / 葉 + + c d

各部の名称(2) 祖先,子孫,部分木,レベル: (a + b) * c + (d / e) 祖先 レベル0 レベル1 レベル2 レベル3 +

木の種類 順序木: 兄弟間で順序づけられている木. 無順序木: 兄弟間に順序がない木. + (a + b) * c + (d / e) * 1: 2: (a + b) * c + (d / e) * / 1: 2: + c d e a b 順序が変わると意味が変わる 順序に意味がない

二分木 二分木: すべての節点が子をたかだか2つしか持たない順序木. (a + b) * c + (d / -e) + 子が2個 * / 子が1個 a b e 子が0個

二分木の表現(1) 例によってWebで...

二分木の表現(2) struct node { char value; struct node *left; struct node *right; } ラベル 1ノードに相当 (構造体) 左の子のアドレス 右の子のアドレス