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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bo9-7.c

?? 嚴蔚敏數據結構代碼 嚴蔚敏數據結構代碼
?? C
字號:
 /* bo9-7.c 哈希函數的基本操作 */
 Status InitHashTable(HashTable *H)
 { /* 操作結果: 構造一個空的哈希表 */
   int i;
   (*H).count=0; /* 當前元素個數為0 */
   (*H).sizeindex=0; /* 初始存儲容量為hashsize[0] */
   m=hashsize[0];
   (*H).elem=(ElemType*)malloc(m*sizeof(ElemType));
   if(!(*H).elem)
     exit(OVERFLOW); /* 存儲分配失敗 */
   for(i=0;i<m;i++)
     (*H).elem[i].key=NULLKEY; /* 未填記錄的標志 */
   return OK;
 }

 void DestroyHashTable(HashTable *H)
 { /* 初始條件: 哈希表H存在。操作結果: 銷毀哈希表H */
   free((*H).elem);
   (*H).elem=NULL;
   (*H).count=0;
   (*H).sizeindex=0;
 }

 unsigned Hash(KeyType K)
 { /* 一個簡單的哈希函數(m為表長,全局變量) */
   return K%m;
 }

 void collision(int *p,int d) /* 線性探測再散列 */
 { /* 開放定址法處理沖突 */
   *p=(*p+d)%m;
 }

 Status SearchHash(HashTable H,KeyType K,int *p,int *c)
 { /* 在開放定址哈希表H中查找關鍵碼為K的元素,若查找成功,以p指示待查數據 */
   /* 元素在表中位置,并返回SUCCESS;否則,以p指示插入位置,并返回UNSUCCESS */
   /* c用以計沖突次數,其初值置零,供建表插入時參考。算法9.17 */
   *p=Hash(K); /* 求得哈希地址 */
   while(H.elem[*p].key!=NULLKEY&&!EQ(K,H.elem[*p].key))
   { /* 該位置中填有記錄.并且關鍵字不相等 */
     (*c)++;
     if(*c<m)
       collision(p,*c); /* 求得下一探查地址p */
     else
       break;
   }
   if EQ(K,H.elem[*p].key)
     return SUCCESS; /* 查找成功,p返回待查數據元素位置 */
   else
     return UNSUCCESS; /* 查找不成功(H.elem[p].key==NULLKEY),p返回的是插入位置 */
 }

 Status InsertHash(HashTable *,ElemType); /* 對函數的聲明 */
 void RecreateHashTable(HashTable *H) /* 重建哈希表 */
 { /* 重建哈希表 */
   int i,count=(*H).count;
   ElemType *p,*elem=(ElemType*)malloc(count*sizeof(ElemType));
   p=elem;
   printf("重建哈希表\n");
   for(i=0;i<m;i++) /* 保存原有的數據到elem中 */
     if(((*H).elem+i)->key!=NULLKEY) /* 該單元有數據 */
       *p++=*((*H).elem+i);
   (*H).count=0;
   (*H).sizeindex++; /* 增大存儲容量 */
   m=hashsize[(*H).sizeindex];
   p=(ElemType*)realloc((*H).elem,m*sizeof(ElemType));
   if(!p)
     exit(OVERFLOW); /* 存儲分配失敗 */
   (*H).elem=p;
   for(i=0;i<m;i++)
     (*H).elem[i].key=NULLKEY; /* 未填記錄的標志(初始化) */
   for(p=elem;p<elem+count;p++) /* 將原有的數據按照新的表長插入到重建的哈希表中 */
     InsertHash(H,*p);
 }

 Status InsertHash(HashTable *H,ElemType e)
 { /* 查找不成功時插入數據元素e到開放定址哈希表H中,并返回OK; */
   /* 若沖突次數過大,則重建哈希表。算法9.18 */
   int c,p;
   c=0;
   if(SearchHash(*H,e.key,&p,&c)) /* 表中已有與e有相同關鍵字的元素 */
     return DUPLICATE;
   else if(c<hashsize[(*H).sizeindex]/2) /* 沖突次數c未達到上限,(c的閥值可調) */
   { /* 插入e */
     (*H).elem[p]=e;
     ++(*H).count;
     return OK;
   }
   else
     RecreateHashTable(H); /* 重建哈希表 */
   return ERROR;
 }

 void TraverseHash(HashTable H,void(*Vi)(int,ElemType))
 { /* 按哈希地址的順序遍歷哈希表 */
   int i;
   printf("哈希地址0~%d\n",m-1);
   for(i=0;i<m;i++)
     if(H.elem[i].key!=NULLKEY) /* 有數據 */
       Vi(i,H.elem[i]);
 }

 Status Find(HashTable H,KeyType K,int *p)
 { /* 在開放定址哈希表H中查找關鍵碼為K的元素,若查找成功,以p指示待查數據 */
   /* 元素在表中位置,并返回SUCCESS;否則,返回UNSUCCESS */
   int c=0;
   *p=Hash(K); /* 求得哈希地址 */
   while(H.elem[*p].key!=NULLKEY&&!EQ(K,H.elem[*p].key))
   { /* 該位置中填有記錄.并且關鍵字不相等 */
     c++;
     if(c<m)
       collision(p,c); /* 求得下一探查地址p */
     else
       return UNSUCCESS; /* 查找不成功(H.elem[p].key==NULLKEY) */
   }
   if EQ(K,H.elem[*p].key)
     return SUCCESS; /* 查找成功,p返回待查數據元素位置 */
   else
     return UNSUCCESS; /* 查找不成功(H.elem[p].key==NULLKEY) */
 }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品免费看片| 欧美日韩国产bt| 亚洲成人免费观看| 欧美日韩在线播| 99re这里只有精品视频首页| 成人一区二区视频| 国产成人aaa| 成人av第一页| 99精品黄色片免费大全| 9i看片成人免费高清| 91麻豆6部合集magnet| 7777精品伊人久久久大香线蕉 | 国产精品狼人久久影院观看方式| 色婷婷一区二区三区四区| 久久久99久久精品欧美| 波多野结衣中文一区| 国产精品国产a| 国产精品一色哟哟哟| 亚洲欧洲av在线| 中国av一区二区三区| 欧美精品一区在线观看| 精品国产91九色蝌蚪| 极品美女销魂一区二区三区 | 精品99久久久久久| 精品国产91久久久久久久妲己| 久久久久久麻豆| 中文字幕亚洲综合久久菠萝蜜| 亚洲视频一区二区免费在线观看| 亚洲精品一卡二卡| 亚洲第一激情av| 美腿丝袜在线亚洲一区 | 国产欧美一区二区精品忘忧草| 国产午夜三级一区二区三| 国产精品成人网| 亚洲午夜精品在线| 麻豆精品久久精品色综合| 国产不卡在线播放| 欧美视频中文字幕| 精品国产一区二区三区忘忧草| 精品一区二区在线播放| 国产一区二区精品久久91| 国产视频一区二区三区在线观看 | 国产片一区二区三区| 蜜桃精品视频在线| 一本久久精品一区二区| 久久久久久久久久久黄色| 性感美女极品91精品| 在线观看日韩精品| 亚洲午夜影视影院在线观看| 色婷婷精品大视频在线蜜桃视频| 久久无码av三级| 狠狠狠色丁香婷婷综合激情| 日韩欧美国产wwwww| 日韩电影在线观看一区| 欧美精选一区二区| 成人黄页毛片网站| 久久综合色之久久综合| 精品一区二区在线免费观看| 欧美xxxx在线观看| 国产成人综合亚洲91猫咪| 中文字幕巨乱亚洲| 97久久精品人人澡人人爽| 一区二区三区欧美| 欧美巨大另类极品videosbest| 热久久久久久久| 久久精品夜夜夜夜久久| 成人国产精品免费观看视频| 国产成人在线免费观看| 91久久国产最好的精华液| 中文字幕一区二区在线播放| 国产福利91精品一区二区三区| 日韩午夜在线影院| 麻豆精品视频在线观看| 91精品国产欧美日韩| 亚洲成人动漫一区| 日韩一级二级三级| 99国产精品久久久久| 亚洲欧美国产77777| 精品亚洲国产成人av制服丝袜 | 国产欧美精品一区二区色综合| 亚洲麻豆国产自偷在线| 中文字幕字幕中文在线中不卡视频| 午夜伦欧美伦电影理论片| 欧美日韩国产不卡| 久久99在线观看| 欧美高清在线一区| 色噜噜狠狠一区二区三区果冻| 亚洲欧美另类图片小说| 欧美另类久久久品| 国产精品一区二区在线观看不卡 | 色哟哟一区二区三区| 亚洲3atv精品一区二区三区| 精品国内二区三区| 99久久99久久久精品齐齐| 亚洲精品大片www| 久久久久久综合| 欧美在线影院一区二区| 久久69国产一区二区蜜臀| 成人欧美一区二区三区在线播放| 欧美日韩成人综合| 丁香网亚洲国际| 日韩av午夜在线观看| 日韩毛片精品高清免费| 欧美精品一区二区三区蜜桃| 欧美在线视频你懂得| 国产久卡久卡久卡久卡视频精品| 夜夜操天天操亚洲| 日本一区二区高清| 久久久精品一品道一区| 日韩一级免费观看| 欧美一区二区三区视频在线| 欧美在线看片a免费观看| 成人av在线资源网站| 国产精华液一区二区三区| 成人精品gif动图一区| 免费人成网站在线观看欧美高清| 亚洲国产视频在线| 一区二区三区在线观看欧美| 亚洲欧美色图小说| 亚洲男人的天堂av| 洋洋成人永久网站入口| 亚洲欧美日韩中文字幕一区二区三区| 国产精品免费观看视频| 国产精品亲子乱子伦xxxx裸| 国产欧美日韩在线看| 欧美韩国日本综合| 亚洲三级久久久| 亚洲成人久久影院| 日韩电影一区二区三区四区| 热久久久久久久| 国产福利91精品一区二区三区| 精品一区二区三区在线视频| 美腿丝袜亚洲综合| 国产精品一区二区三区99| 狠狠v欧美v日韩v亚洲ⅴ| 成人免费不卡视频| 色婷婷激情综合| 国产亚洲欧美中文| 亚洲欧美色图小说| 首页综合国产亚洲丝袜| 国产一区高清在线| 成人av电影在线播放| 91精品国产综合久久福利软件| 91精品福利在线一区二区三区 | 亚洲成av人片在线观看| 欧美日韩国产首页| 91精品福利视频| 91免费视频网址| 粉嫩av一区二区三区在线播放 | 欧美性大战xxxxx久久久| 日韩一区二区三区在线视频| 精品久久一二三区| 亚洲天堂成人在线观看| 国产91丝袜在线播放九色| 99久久免费视频.com| 免费成人结看片| 水野朝阳av一区二区三区| 国产揄拍国内精品对白| 日韩av一区二区三区| 成人午夜短视频| 91麻豆精品国产| 国产婷婷色一区二区三区| 日韩欧美成人一区二区| 国产精品久久久久一区 | 日韩中文字幕91| gogogo免费视频观看亚洲一| 欧美xxxx老人做受| 日日嗨av一区二区三区四区| 一本色道综合亚洲| 中文字幕精品在线不卡| 国产在线国偷精品免费看| 欧美日韩国产另类一区| 一区二区国产视频| 成人小视频免费观看| 国产精品丝袜一区| 国产jizzjizz一区二区| 久久久久久麻豆| 国内久久精品视频| 精品国产一区二区三区久久影院| 婷婷综合另类小说色区| 欧美久久免费观看| 日本少妇一区二区| 精品国产一区二区三区久久影院| 日韩avvvv在线播放| 精品国产99国产精品| 国产剧情一区在线| 国产精品久久久久aaaa樱花| 91影院在线免费观看| 亚洲一区二区三区激情| 欧美一区二区三区在线看| 狠狠色丁香九九婷婷综合五月| 久久久久久久久免费| 99视频热这里只有精品免费| 亚洲国产日韩在线一区模特| 日韩一区二区三区观看| 风间由美一区二区av101 | 久久综合九色欧美综合狠狠| 国产69精品久久99不卡| 亚洲国产精品久久一线不卡| 欧美tickling网站挠脚心|