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

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

?? bo9-5.c

?? 數(shù)據(jù)結(jié)構(gòu)最基本最經(jīng)典的問題
?? C
字號:
 /* bo9-5.c 動態(tài)查找表(雙鏈鍵樹)的基本操作 */
 Status InitDSTable(DLTree *DT)
 { /* 操作結(jié)果: 構(gòu)造一個空的雙鏈鍵樹DT */
   *DT=NULL;
   return OK;
 }

 void DestroyDSTable(DLTree *DT)
 { /* 初始條件: 雙鏈鍵樹DT存在。操作結(jié)果: 銷毀雙鏈鍵樹DT */
   if(*DT) /* 非空樹 */
   {
     if((*DT)->kind==BRANCH&&(*DT)->a.first) /* *DT是分支結(jié)點且有孩子 */
       DestroyDSTable(&(*DT)->a.first); /* 銷毀孩子子樹 */
     if((*DT)->next) /* 有兄弟 */
       DestroyDSTable(&(*DT)->next); /* 銷毀兄弟子樹 */
     free(*DT); /* 釋放根結(jié)點 */
     *DT=NULL; /* 空指針賦0 */
   }
 }

 Record *SearchDLTree(DLTree T,KeysType K)
 { /* 在非空雙鏈鍵樹T中查找關(guān)鍵字等于K的記錄,若存在, */
   /* 則返回指向該記錄的指針,否則返回空指針。算法9.15,有改動 */
   DLTree p;
   int i;
   if(T)
   {
     p=T; /* 初始化 */
     i=0;
     while(p&&i<K.num)
     {
       while(p&&p->symbol!=K.ch[i]) /* 查找關(guān)鍵字的第i位 */
         p=p->next;
       if(p&&i<K.num) /* 準備查找下一位 */
         p=p->a.first;
       ++i;
     } /* 查找結(jié)束 */
     if(!p) /* 查找不成功 */
       return NULL;
     else /* 查找成功 */
       return p->a.infoptr;
   }
   else
     return NULL; /* 樹空 */
 }

 void InsertDSTable(DLTree *DT,Record *r)
 { /* 初始條件: 雙鏈鍵樹DT存在,r為待插入的數(shù)據(jù)元素的指針 */
   /* 操作結(jié)果: 若DT中不存在其關(guān)鍵字等于(*r).key.ch的數(shù)據(jù)元素, */
   /*           則按關(guān)鍵字順序插r到DT中 */
   DLTree p=NULL,q,ap;
   int i=0;
   KeysType K=r->key;
   if(!*DT&&K.num) /* 空樹且關(guān)鍵字符串非空 */
   {
     *DT=ap=(DLTree)malloc(sizeof(DLTNode));
     for(;i<K.num;i++) /* 插入分支結(jié)點 */
     {
       if(p)
         p->a.first=ap;
       ap->next=NULL;
       ap->symbol=K.ch[i];
       ap->kind=BRANCH;
       p=ap;
       ap=(DLTree)malloc(sizeof(DLTNode));
     }
     p->a.first=ap; /* 插入葉子結(jié)點 */
     ap->next=NULL;
     ap->symbol=Nil;
     ap->kind=LEAF;
     ap->a.infoptr=r;
   }
   else /* 非空樹 */
   {
     p=*DT; /* 指向根結(jié)點 */
     while(p&&i<K.num)
     {
       while(p&&p->symbol<K.ch[i]) /* 沿兄弟結(jié)點查找 */
       {
         q=p;
         p=p->next;
       }
       if(p&&p->symbol==K.ch[i]) /* 找到與K.ch[i]相符的結(jié)點 */
       {
         q=p;
         p=p->a.first; /* p指向?qū)⑴cK.ch[i+1]比較的結(jié)點 */
         ++i;
       }
       else /* 沒找到,插入關(guān)鍵字 */
       {
         ap=(DLTree)malloc(sizeof(DLTNode));
         if(q->a.first==p)
           q->a.first=ap; /* 在長子的位置插入 */
         else /* q->next==p */
           q->next=ap; /* 在兄弟的位置插入 */
         ap->next=p;
         ap->symbol=K.ch[i];
         ap->kind=BRANCH;
         p=ap;
         ap=(DLTree)malloc(sizeof(DLTNode));
         i++;
         for(;i<K.num;i++) /* 插入分支結(jié)點 */
         {
           p->a.first=ap;
           ap->next=NULL;
           ap->symbol=K.ch[i];
           ap->kind=BRANCH;
	   p=ap;
           ap=(DLTree)malloc(sizeof(DLTNode));
         }
         p->a.first=ap; /* 插入葉子結(jié)點 */
         ap->next=NULL;
         ap->symbol=Nil;
         ap->kind=LEAF;
         ap->a.infoptr=r;
       }
     }
   }
 }

 typedef struct
 {
   char ch;
   DLTree p;
 }SElemType; /* 定義棧元素類型 */
 #include"c3-1.h"
 #include"bo3-1.c"
 void TraverseDSTable(DLTree DT,void(*Vi)(Record))
 { /* 初始條件: 雙鏈鍵樹DT存在,Vi是對結(jié)點操作的應用函數(shù), */
   /*           ViR是對記錄操作的應用函數(shù) */
   /* 操作結(jié)果: 按關(guān)鍵字的順序輸出關(guān)鍵字及其對應的記錄 */
   SqStack s;
   SElemType e;
   DLTree p;
   int i=0,n=8;
   if(DT)
   {
     InitStack(&s);
     e.p=DT;
     e.ch=DT->symbol;
     Push(&s,e);
     p=DT->a.first;
     while(p->kind==BRANCH) /* 分支結(jié)點 */
     {
       e.p=p;
       e.ch=p->symbol;
       Push(&s,e);
       p=p->a.first;
     }
     e.p=p;
     e.ch=p->symbol;
     Push(&s,e);
     Vi(*(p->a.infoptr));
     i++;
     while(!StackEmpty(s))
     {
       Pop(&s,&e);
       p=e.p;
       if(p->next) /* 有兄弟結(jié)點 */
       {
         p=p->next;
         while(p->kind==BRANCH) /* 分支結(jié)點 */
         {
           e.p=p;
           e.ch=p->symbol;
           Push(&s,e);
           p=p->a.first;
         }
         e.p=p;
         e.ch=p->symbol;
         Push(&s,e);
         Vi(*(p->a.infoptr));
         i++;
         if(i%n==0)
           printf("\n"); /* 輸出n個元素后換行 */
       }
     }
   }
 }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区 在线观看视频| 天天色天天爱天天射综合| 美腿丝袜亚洲综合| 欧洲国内综合视频| a4yy欧美一区二区三区| 精品国产成人在线影院| 久久精品国内一区二区三区| 欧美人牲a欧美精品| 日韩中文字幕av电影| 欧美高清精品3d| 亚洲一二三区不卡| 色综合久久天天综合网| 日韩一区在线看| www.欧美色图| 一区二区三区.www| 日韩一区二区高清| 国产一区在线不卡| 欧美国产欧美综合| 9久草视频在线视频精品| 自拍av一区二区三区| 成人少妇影院yyyy| 亚洲最大成人综合| 精品久久国产老人久久综合| 国产精品一二三区| 亚洲一区二区三区四区在线 | 成人激情视频网站| 9191成人精品久久| 亚洲乱码中文字幕| 在线观看三级视频欧美| 1024精品合集| 日韩精品专区在线影院重磅| 偷拍亚洲欧洲综合| 日韩欧美中文一区二区| 久久综合999| 一本久道久久综合中文字幕| 日本视频一区二区三区| 中文字幕av一区二区三区免费看| 亚洲成av人影院| 中文字幕av免费专区久久| 欧美综合亚洲图片综合区| 国产一区二区剧情av在线| 91在线无精精品入口| 亚洲日本护士毛茸茸| 欧美一区午夜视频在线观看| 国产传媒一区在线| 91.xcao| 成人在线视频首页| 国内精品伊人久久久久av影院| 亚洲综合在线五月| 国产精品第一页第二页第三页| 91精品久久久久久久91蜜桃| 欧美亚洲动漫精品| 色悠悠久久综合| 亚洲精品欧美专区| 成人欧美一区二区三区黑人麻豆| 久久久久久久久久看片| 日韩免费高清视频| 欧美午夜片在线观看| 日本福利一区二区| 欧美日韩在线一区二区| 在线看国产一区| 色婷婷久久久综合中文字幕| 91色婷婷久久久久合中文| 色呦呦国产精品| 欧美视频日韩视频在线观看| 欧美影视一区二区三区| 日韩视频免费观看高清完整版| 欧美日韩国产欧美日美国产精品| 欧美日韩www| 久久久国产一区二区三区四区小说 | 国产亚洲一本大道中文在线| 久久久99精品久久| 亚洲精品国产精品乱码不99| 五月婷婷综合激情| 国产精品自拍网站| 一本到不卡免费一区二区| 3d动漫精品啪啪一区二区竹菊| 欧美一区二区三区成人| 国产日韩影视精品| 日日欢夜夜爽一区| 粉嫩av一区二区三区粉嫩| 欧美羞羞免费网站| 国产日韩精品视频一区| 天天色天天爱天天射综合| 成人一道本在线| 日韩美一区二区三区| 亚洲一区中文在线| av高清不卡在线| 久久青草欧美一区二区三区| 夜夜嗨av一区二区三区中文字幕| 国产一区在线观看麻豆| 亚洲一区二区综合| 国产不卡视频一区二区三区| 日韩欧美一区二区久久婷婷| 日韩伦理免费电影| 中文字幕一区二区三区四区不卡| 亚洲二区视频在线| 一本久道久久综合中文字幕| 国产精品久久久久影院老司| 国模一区二区三区白浆| 日韩欧美123| 精品一区二区三区在线观看国产 | 亚洲不卡在线观看| 色综合久久88色综合天天6| 久久精品免费在线观看| 狠狠色丁香婷婷综合久久片| 91精品免费观看| 日韩成人dvd| 91精品国产综合久久福利| 精品一区二区在线免费观看| 日韩天堂在线观看| 久久 天天综合| 国产区在线观看成人精品| 豆国产96在线|亚洲| 欧美国产丝袜视频| 色综合久久六月婷婷中文字幕| 亚洲影视在线播放| 精品国产一区二区三区忘忧草| 精品影视av免费| 国产亚洲综合在线| 日本道色综合久久| 麻豆91在线观看| 国产精品入口麻豆九色| 色94色欧美sute亚洲线路一久| 丝袜亚洲另类欧美综合| 国产欧美1区2区3区| 欧美日本韩国一区二区三区视频 | 99精品桃花视频在线观看| 亚洲精选视频免费看| 日韩丝袜美女视频| 97精品国产露脸对白| 麻豆精品国产传媒mv男同| 成人免费一区二区三区视频 | 欧美综合一区二区| 国产成人一区在线| 美女在线一区二区| 亚洲一区二区高清| 中文字幕第一区二区| 日韩女优av电影| 欧美高清性hdvideosex| 91亚洲国产成人精品一区二区三| 久久99精品久久久久久国产越南 | 国产成人av一区二区三区在线| 一区二区高清视频在线观看| 国产精品天美传媒| 欧美精品一区二区三区四区| 欧美日韩国产高清一区| 欧美少妇bbb| 97精品超碰一区二区三区| 高清国产一区二区三区| 国产精品88av| 国产91精品一区二区麻豆亚洲| 国产揄拍国内精品对白| 激情欧美一区二区三区在线观看| 亚洲视频你懂的| 日本一区二区在线不卡| 国产亚洲自拍一区| 国产亚洲一区二区三区在线观看| 精品亚洲成av人在线观看| 国产原创一区二区三区| 成人小视频在线观看| 91麻豆国产香蕉久久精品| 99久久国产综合精品女不卡| 国产三级欧美三级日产三级99 | 欧美精品久久一区| 日韩视频不卡中文| 国产精品视频线看| 性做久久久久久久免费看| 欧美吞精做爰啪啪高潮| 日本欧美在线观看| 日日骚欧美日韩| 国产91高潮流白浆在线麻豆 | 一区二区三区中文字幕| 五月天亚洲精品| av亚洲产国偷v产偷v自拍| 欧美一区二区三区性视频| 国产精品素人视频| 在线不卡中文字幕播放| 中文字幕巨乱亚洲| 精品一区二区免费视频| 色八戒一区二区三区| 日本一区二区在线不卡| 蜜臀91精品一区二区三区 | 日韩欧美国产系列| 亚洲蜜臀av乱码久久精品 | 精品99一区二区| 婷婷开心激情综合| 欧美丝袜自拍制服另类| 中文字幕精品一区二区三区精品| 99精品欧美一区二区三区综合在线| 91国产免费观看| 亚洲国产日韩在线一区模特| 国产mv日韩mv欧美| 一本久久精品一区二区| 精品国产免费一区二区三区香蕉| 一卡二卡欧美日韩| 久久99国产精品麻豆| 欧美怡红院视频| 欧美精品一区二区久久婷婷| 亚洲国产精品视频|