亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? bo9-4.cpp

?? 數(shù)據(jù)結(jié)構(gòu)代碼
?? CPP
字號(hào):
 // bo9-4.cpp 動(dòng)態(tài)查找表(B樹)的基本操作
 Status InitDSTable(BTree &DT)
 { // 操作結(jié)果: 構(gòu)造一個(gè)空的動(dòng)態(tài)查找表DT
   DT=NULL;
   return OK;
 }

 void DestroyDSTable(BTree &DT)
 { // 初始條件: 動(dòng)態(tài)查找表DT存在。操作結(jié)果: 銷毀動(dòng)態(tài)查找表DT
   int i;
   if(DT) // 非空樹
   {
     for(i=0;i<=DT->keynum;i++)
       DestroyDSTable(DT->node[i].ptr); // 依次銷毀第i棵子樹
     free(DT); // 釋放根結(jié)點(diǎn)
     DT=NULL; // 空指針賦0
   }
 }

 int Search(BTree p, KeyType K)
 { // 在p->node[1..keynum].key中查找i,使得p->node[i].key≤K<p->node[i+1].key
   int i=0,j;
   for(j=1;j<=p->keynum;j++)
     if(p->node[j].key<=K)
       i=j;
   return i;
 }

 Result SearchBTree(BTree T, KeyType K)
 { // 在m階B樹T上查找關(guān)鍵字K,返回結(jié)果(pt,i,tag)。若查找成功,則特征值
   // tag=1,指針pt所指結(jié)點(diǎn)中第i個(gè)關(guān)鍵字等于K;否則特征值tag=0,等于K的
   // 關(guān)鍵字應(yīng)插入在指針Pt所指結(jié)點(diǎn)中第i和第i+1個(gè)關(guān)鍵字之間。算法9.13
   BTree p=T,q=NULL; // 初始化,p指向待查結(jié)點(diǎn),q指向p的雙親
   Status found=FALSE;
   int i=0;
   Result r;
   while(p&&!found)
   {
     i=Search(p,K); // p->node[i].key≤K<p->node[i+1].key
     if(i>0&&p->node[i].key==K) // 找到待查關(guān)鍵字
       found=TRUE;
     else
     {
       q=p;
       p=p->node[i].ptr;
     }
   }
   r.i=i;
   if(found) // 查找成功
   {
     r.pt=p;
     r.tag=1;
   }
   else //  查找不成功,返回K的插入位置信息
   {
     r.pt=q;
     r.tag=0;
   }
   return r;
 }

 void Insert(BTree &q,int i,Record *r,BTree ap)
 { // 將r->key、r和ap分別插入到q->key[i+1]、q->recptr[i+1]和q->ptr[i+1]中
   int j;
   for(j=q->keynum;j>i;j--) // 空出q->node[i+1]
     q->node[j+1]=q->node[j];
   q->node[i+1].key=r->key;
   q->node[i+1].ptr=ap;
   q->node[i+1].recptr=r;
   q->keynum++;
 }

 void split(BTree &q,BTree &ap)
 { // 將結(jié)點(diǎn)q分裂成兩個(gè)結(jié)點(diǎn),前一半保留,后一半移入新生結(jié)點(diǎn)ap
   int i,s=(m+1)/2;
   ap=(BTree)malloc(sizeof(BTNode)); // 生成新結(jié)點(diǎn)ap
   ap->node[0].ptr=q->node[s].ptr; // 后一半移入ap
   for(i=s+1;i<=m;i++)
   {
     ap->node[i-s]=q->node[i];
     if(ap->node[i-s].ptr)
       ap->node[i-s].ptr->parent=ap;
   }
   ap->keynum=m-s;
   ap->parent=q->parent;
   q->keynum=s-1; // q的前一半保留,修改keynum
 }

 void NewRoot(BTree &T,Record *r,BTree ap)
 { // 生成含信息(T,r,ap)的新的根結(jié)點(diǎn)*T,原T和ap為子樹指針
   BTree p;
   p=(BTree)malloc(sizeof(BTNode));
   p->node[0].ptr=T;
   T=p;
   if(T->node[0].ptr)
     T->node[0].ptr->parent=T;
   T->parent=NULL;
   T->keynum=1;
   T->node[1].key=r->key;
   T->node[1].recptr=r;
   T->node[1].ptr=ap;
   if(T->node[1].ptr)
     T->node[1].ptr->parent=T;
 }

 void InsertBTree(BTree &T,Record *r,BTree q,int i)
 { // 在m階B樹T上結(jié)點(diǎn)*q的key[i]與key[i+1]之間插入關(guān)鍵字K的指針r。若引起
   // 結(jié)點(diǎn)過(guò)大,則沿雙親鏈進(jìn)行必要的結(jié)點(diǎn)分裂調(diào)整,使T仍是m階B樹。算法9.14改
   BTree ap=NULL;
   Status finished=FALSE;
   int s;
   Record *rx;
   rx=r;
   while(q&&!finished)
   {
     Insert(q,i,rx,ap); // 將r->key、r和ap分別插入到q->key[i+1]、q->recptr[i+1]和q->ptr[i+1]中
     if(q->keynum<m)
       finished=TRUE; // 插入完成
     else
     { // 分裂結(jié)點(diǎn)*q
       s=(m+1)/2;
       rx=q->node[s].recptr;
       split(q,ap); // 將q->key[s+1..m],q->ptr[s..m]和q->recptr[s+1..m]移入新結(jié)點(diǎn)*ap
       q=q->parent;
       if(q)
         i=Search(q,rx->key); // 在雙親結(jié)點(diǎn)*q中查找rx->key的插入位置
     }
   }
   if(!finished) // T是空樹(參數(shù)q初值為NULL)或根結(jié)點(diǎn)已分裂為結(jié)點(diǎn)*q和*ap
     NewRoot(T,rx,ap); // 生成含信息(T,rx,ap)的新的根結(jié)點(diǎn)*T,原T和ap為子樹指針
 }

 void TraverseDSTable(BTree DT,void(*Visit)(BTNode,int))
 { // 初始條件: 動(dòng)態(tài)查找表DT存在,Visit是對(duì)結(jié)點(diǎn)操作的應(yīng)用函數(shù)
   // 操作結(jié)果: 按關(guān)鍵字的順序?qū)T的每個(gè)結(jié)點(diǎn)調(diào)用函數(shù)Visit()一次且至多一次
   int i;
   if(DT) // 非空樹
   {
     if(DT->node[0].ptr) // 有第0棵子樹
       TraverseDSTable(DT->node[0].ptr,Visit);
     for(i=1;i<=DT->keynum;i++)
     {
       Visit(*DT,i);
       if(DT->node[i].ptr) // 有第i棵子樹
         TraverseDSTable(DT->node[i].ptr,Visit);
     }
   }
 }

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美久久久| 日韩av网站在线观看| 久久一夜天堂av一区二区三区| 欧美日韩精品免费观看视频| 94色蜜桃网一区二区三区| 99久久伊人久久99| 91亚洲大成网污www| 色综合天天在线| 一本到高清视频免费精品| 欧洲亚洲国产日韩| 欧美性色欧美a在线播放| av亚洲精华国产精华| 一本高清dvd不卡在线观看| 色噜噜久久综合| 精品污污网站免费看| 欧美一区日韩一区| 久久精品一区二区三区不卡| 国产精品免费看片| 一区二区三区自拍| 免费成人结看片| 国产九色sp调教91| 99久久国产综合精品色伊| 欧洲一区二区av| 精品国一区二区三区| 国产欧美精品区一区二区三区| 亚洲裸体xxx| 精品在线播放免费| 99国产一区二区三精品乱码| 欧美日韩精品欧美日韩精品一| 久久先锋影音av鲁色资源网| 国产精品亲子伦对白| 亚洲成av人在线观看| 国产精品一线二线三线| 色悠悠亚洲一区二区| 日韩欧美在线综合网| 成人免费在线播放视频| 日本中文一区二区三区| 国产成人精品免费网站| 欧美午夜精品一区二区三区| www欧美成人18+| 亚洲尤物视频在线| 国产999精品久久久久久| 欧美日本在线观看| 国产精品国产自产拍高清av| 美女国产一区二区三区| 欧美在线短视频| 亚洲国产精品精华液2区45| 日韩不卡一区二区三区| 91在线视频官网| 久久精品一区二区| 久久精品国产77777蜜臀| 在线这里只有精品| 欧美精彩视频一区二区三区| 日本不卡一区二区三区| 日本精品一区二区三区高清| 国产精品久久久久久久岛一牛影视| 日韩高清不卡一区二区| 91成人在线免费观看| 中文字幕在线不卡视频| 国产麻豆精品视频| 精品国产凹凸成av人导航| 亚洲国产美女搞黄色| 在线观看一区日韩| 亚洲日本va午夜在线影院| 懂色av中文字幕一区二区三区| 日韩一区二区三区四区五区六区| 亚洲大片在线观看| 欧美日韩久久一区二区| 亚洲福利国产精品| 在线观看中文字幕不卡| 亚洲一区二区三区中文字幕 | 欧美午夜片在线观看| 成人免费在线播放视频| 成人动漫在线一区| 中文字幕中文字幕一区二区| 成人影视亚洲图片在线| 国产精品久久久久久久久免费相片| 日本网站在线观看一区二区三区| 欧美系列日韩一区| 肉丝袜脚交视频一区二区| 色一情一乱一乱一91av| 亚洲色图欧美激情| 91一区二区三区在线播放| 亚洲区小说区图片区qvod| 91麻豆国产在线观看| 亚洲少妇30p| 欧美日本韩国一区| 激情综合一区二区三区| 精品福利av导航| 国产精品99久久久久久似苏梦涵| 国产欧美一区二区精品秋霞影院| 国产成人鲁色资源国产91色综| 国产亚洲一二三区| 99久久综合国产精品| 亚洲自拍偷拍麻豆| 欧美一级在线免费| 国产精品影视在线| 亚洲欧美国产77777| 欧美三级中文字| 免费成人在线网站| 国产午夜精品美女毛片视频| www.亚洲在线| 天天综合天天做天天综合| 日韩免费一区二区三区在线播放| 国产麻豆精品一区二区| 亚洲欧美日韩一区二区三区在线观看| 欧美精品亚洲一区二区在线播放| 国模无码大尺度一区二区三区| 日韩一区欧美小说| 日韩一区二区三区在线观看| 国产91色综合久久免费分享| 亚洲国产精品麻豆| 国产日产精品一区| 欧美日韩一区精品| 高清beeg欧美| 日本成人在线网站| 日韩美女精品在线| 日韩一区二区精品在线观看| 99久久综合国产精品| 老司机精品视频导航| 亚洲欧美日韩电影| 精品国产1区二区| 欧美高清视频不卡网| voyeur盗摄精品| 麻豆91精品视频| 亚洲国产精品精华液网站| 国产精品久久网站| 精品国产sm最大网站| 欧美日韩大陆一区二区| 成人动漫精品一区二区| 国产最新精品精品你懂的| 亚洲高清免费一级二级三级| 日韩一区在线看| 久久女同性恋中文字幕| 欧美日韩成人在线一区| 色综合天天天天做夜夜夜夜做| 国产精品一区二区x88av| 免费观看日韩av| 午夜av区久久| 亚洲国产三级在线| 亚洲精品久久7777| 国产欧美一区二区精品忘忧草| 精品国产凹凸成av人导航| 精品免费日韩av| 欧美一区二区三区精品| 91精品国产品国语在线不卡| 欧美性极品少妇| 欧美天堂一区二区三区| 91行情网站电视在线观看高清版| 97se亚洲国产综合自在线| 97精品久久久久中文字幕| 岛国精品在线播放| 成人性生交大合| 不卡视频在线观看| 91浏览器在线视频| 在线精品视频免费观看| 欧美日韩和欧美的一区二区| 欧美三片在线视频观看| 欧美精品粉嫩高潮一区二区| 欧美日韩一级二级| 91精品中文字幕一区二区三区| 欧美日韩成人综合天天影院| 69精品人人人人| 久久无码av三级| 综合久久国产九一剧情麻豆| 亚洲精品v日韩精品| 亚洲午夜激情网站| 三级一区在线视频先锋 | 亚洲成av人**亚洲成av**| 亚洲一区在线观看免费| 亚洲国产精品久久久久婷婷884| 天天综合网 天天综合色| 久久成人羞羞网站| 成人精品国产一区二区4080| 欧美午夜在线一二页| 欧美大片在线观看一区| 国产精品成人一区二区艾草| 五月天网站亚洲| 国精产品一区一区三区mba桃花| 丁香婷婷综合激情五月色| 在线观看中文字幕不卡| 欧美成人一区二区| 国产人妖乱国产精品人妖| 国产精品久久久久久户外露出| 亚洲精品美腿丝袜| 免费成人在线播放| av在线综合网| 欧美一区二区在线视频| 久久久久久久久岛国免费| 中文字幕综合网| 麻豆91精品91久久久的内涵| 成人综合在线视频| 欧美人狂配大交3d怪物一区| 国产日产亚洲精品系列| 亚洲国产裸拍裸体视频在线观看乱了| 狠狠色伊人亚洲综合成人| 99精品视频中文字幕| 日韩美一区二区三区| 亚洲激情在线激情| 国产一区91精品张津瑜|