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

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

?? 哈希表的綜合操作.cpp

?? 數據結構經典算法的c語言實現
?? CPP
字號:
//* * * * * * * * * * * * * * * * * * * * * * * *
//*CHAPTER          :6  (6_6)                   *
//*PROGRAM          :哈希表的綜合操作           *
//*CONTENT          :Insert,Search,Deltet       *
//* * * * * * * * * * * * * * * * * * * * * * * *
#include <dos.h>
#include <conio.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 12 //哈希表的最大容量,與所采用的哈希函數有關
enum BOOL{False,True};
enum HAVEORNOT{NULLKEY,HAVEKEY,DELKEY}; 
    //哈希表元素的三種狀態,沒有記錄、有記錄、有過記錄但已被刪除
typedef struct         //定義哈希表的結構
{int  elem[MAXSIZE];   //數據元素體
 HAVEORNOT elemflag[MAXSIZE]; //元素狀態標志,沒有記錄、有記錄、有過記錄但已被刪除
 int count;  //哈希表中當前元素的個數 
}HashTable;
typedef struct
{int keynum;      //記錄的數據域,只有關鍵字一項
}Record;
void InitialHash(HashTable&); //初始化哈希表
void PrintHash(HashTable);    //顯示哈希表中的所有元素
BOOL SearchHash(HashTable,int,int&); //在哈希表中查找元素
BOOL InsertHash(HashTable&,Record);    //在哈希表中插入元素
BOOL DeleteHash(HashTable&,Record);    //在哈希表中刪除元素
int  Hash(int);  //哈希函數
void main()
{HashTable H;  //聲明哈希表H
 char ch,j='y'; 
 int position;
 Record R;
 BOOL temp;
/* textbackground(3);  //設定屏幕顏色
 textcolor(15);
 clrscr();*/
 //-------------------------程序說明-------------------------------
 printf("This program will show how to operate to a HashTable.\n");
 printf("You can display all elems,search a elem,\ninsert a elem,delete a elem.\n");
 //----------------------------------------------------------------
 InitialHash(H);
 while(j!='n')
    {printf("1.display\n");
     printf("2.search\n");
     printf("3.insert\n");
     printf("4.delete\n");
     printf("5.exit\n");
     scanf(" %c",&ch); //輸入操作選項
     switch(ch)
      {case '1':if(H.count) PrintHash(H);  //哈希表不空
		else printf("The HashTable has no elem!\n");
		break;
       case '2':if(!H.count) printf("The HashTable has no elem!\n"); //哈希表空
		else
		   {printf("Please input the keynum(int) of the elem to search:");
		    scanf("%d",&R.keynum); //輸入待查記錄的關鍵字
		    temp=SearchHash(H,R.keynum,position); 
                       //temp=True:記錄查找成功;temp=False:沒有找到待查記錄
		    if(temp) printf("The position of the elem is %d\n",position);
		    else printf("The elem isn't exist!\n");  
		   }
		break;
       case '3':if(H.count==MAXSIZE)  //哈希表已滿
		   {printf("The HashTable is full!\n");
		    break;
		   }
		printf("Please input the elem(int) to insert:");
		scanf("%d",&R.keynum);  //輸入要插入的記錄
		temp=InsertHash(H,R); 
                  //temp=True:記錄插入成功;temp=False:已存在關鍵字相同的記錄
		if(temp) printf("Sucess to insert the elem!\n");
		else printf("Fail to insert the elem.The same elem has been exist!\n");
		break;
       case '4':printf("Please input the keynum of the elem(int) to delet:");
		scanf("%d",&R.keynum); //輸入要刪除記錄的關鍵字
		temp=DeleteHash(H,R); 
                   //temp=True:記錄刪除成功;temp=False:待刪記錄不存在 
		if(temp) printf("Sucess to delete the elem!\n");
		else printf("The elem isn't exist in the HashTable!\n");
		break;
       default: j='n';
    }
 }
 printf("The program is over!\nPress any key to shut off the window!\n");
 getchar();getchar();
}
void InitialHash(HashTable &H)
{//哈希表初始化
 int i;
 H.count=0;
 for(i=0;i<MAXSIZE;i++) H.elemflag[i]=NULLKEY;
}
void PrintHash(HashTable H)
{//顯示哈希表所有元素及其所在位置
 int i;
 for(i=0;i<MAXSIZE;i++) //顯示哈希表中記錄所在位置
    if(H.elemflag[i]==HAVEKEY) //只顯示標志為HAVEKEY(存放有記錄)的元素
       printf("%-4d",i);
 printf("\n");
 for(i=0;i<MAXSIZE;i++) //顯示哈希表中記錄值
    if(H.elemflag[i]==HAVEKEY)
       printf("%-4d",H.elem[i]);
 printf("\ncount:%d\n",H.count); //顯示哈希表當前記錄數
}
BOOL SearchHash(HashTable H,int k,int &p)
{//在開放定址哈希表H中查找關鍵字為k的數據元素,若查找成功,以p指示
 //待查數據元素在表中的位置,并返回True;否則,以p指示插入位置,并
 //返回False
 int p1;
 p1=p=Hash(k); //求得哈希地址
 while(H.elemflag[p]==HAVEKEY&&k!=H.elem[p])  
      //該位置中填有記錄并且關鍵字不相等
   {p++;  //沖突處理方法:線性探測再散列
    if(p>=MAXSIZE) p=p%MAXSIZE; //循環搜索
    if(p==p1) return False;  //整個表已搜索完,沒有找到待查元素
   }
 if(k==H.elem[p]&&H.elemflag[p]==HAVEKEY) //查找成功,p指示待查元素位置
    return True; 
 else return False; //查找不成功
}
BOOL InsertHash(HashTable &H,Record e)
{//查找不成功時插入元素e到開放定址哈希表H中,并返回True,否則返回False
 int p;
 if(SearchHash(H,e.keynum,p)) //表中已有與e有相同關鍵字的元素
    return False;
 else
   {H.elemflag[p]=HAVEKEY;  //設置標志為HAVEKEY,表示該位置已有記錄
    H.elem[p]=e.keynum;     //插入記錄
    H.count++;              //哈希表當前長度加一 
    return True;
   }
}
BOOL DeleteHash(HashTable &H,Record e)
{//在查找成功時刪除待刪元素e,并返回True,否則返回False
 int p;
 if(!SearchHash(H,e.keynum,p)) //表中不存在待刪元素
   return False;
 else
   {H.elemflag[p]=DELKEY; //設置標志為DELKEY,表明該元素已被刪除
    H.count--;    //哈希表當前長度減一
    return True;
   }
}
int Hash(int kn)
{//哈希函數:H(key)=key MOD 11
 return (kn%11);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
56国语精品自产拍在线观看| 欧美日韩中文字幕一区二区| 麻豆免费精品视频| 五月天中文字幕一区二区| 亚洲人成小说网站色在线| 亚洲国产精品高清| 亚洲欧洲av色图| 国产精品卡一卡二| 亚洲乱码中文字幕| 亚洲综合免费观看高清完整版| 成人免费小视频| 亚洲激情校园春色| 天堂蜜桃一区二区三区 | 久久看人人爽人人| 中文字幕第一区二区| 亚洲欧洲日产国产综合网| 亚洲精品videosex极品| 午夜av区久久| 国内欧美视频一区二区| 成人一级黄色片| 91丨国产丨九色丨pron| 欧美性大战久久久久久久| 欧美另类高清zo欧美| 欧美成人精品二区三区99精品| 2021国产精品久久精品| 国产精品久久久久aaaa樱花| 亚洲一二三区在线观看| 久久精品国产77777蜜臀| 国产精品一卡二卡在线观看| 色婷婷综合久久久久中文一区二区| 色婷婷av一区二区三区之一色屋| 6080yy午夜一二三区久久| 国产日韩精品一区二区浪潮av| 国产精品久久免费看| 五月天亚洲精品| 成人网在线免费视频| 欧美久久高跟鞋激| 国产精品网站导航| 青青草原综合久久大伊人精品优势| 国产成人精品一区二| 欧美精品v国产精品v日韩精品 | 欧美精品丝袜中出| 26uuu色噜噜精品一区二区| 亚洲欧美电影一区二区| 青娱乐精品视频在线| 91亚洲精品一区二区乱码| 日韩欧美亚洲一区二区| 亚洲精品国产精品乱码不99| 久久99在线观看| 欧洲av在线精品| 国产婷婷精品av在线| 亚洲男人天堂av网| 国产九色精品成人porny | 欧美一区二区三区人| 国产精品美女久久久久久久 | 国产福利一区在线观看| 欧美日韩三级视频| 亚洲青青青在线视频| 东方欧美亚洲色图在线| 欧美videossexotv100| 午夜私人影院久久久久| 91首页免费视频| 欧美高清在线一区| 久久福利视频一区二区| 6080yy午夜一二三区久久| 亚洲综合色区另类av| 色综合色综合色综合色综合色综合 | 国产精品毛片久久久久久| 国产美女在线精品| 精品裸体舞一区二区三区| 性欧美疯狂xxxxbbbb| 欧美视频在线不卡| 亚洲曰韩产成在线| 欧洲国内综合视频| 亚洲综合视频网| 欧美色图第一页| 亚洲图片自拍偷拍| 欧美色倩网站大全免费| 亚洲高清免费一级二级三级| 欧美性色黄大片| 亚洲高清一区二区三区| 欧美蜜桃一区二区三区| 天天综合色天天| 欧美一区二区三区在线电影| 男女性色大片免费观看一区二区| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 久久久99久久| 成人久久视频在线观看| 亚洲欧洲日产国产综合网| 色婷婷综合久久| 日韩专区欧美专区| 精品国产一区二区三区忘忧草| 激情欧美日韩一区二区| 中文乱码免费一区二区| 在线精品视频一区二区三四| 日本在线不卡一区| 久久综合九色综合欧美98| 成人一区二区三区视频在线观看| 国产精品久久久久久久久久久免费看| aaa欧美大片| 日本 国产 欧美色综合| 国产性天天综合网| 91国偷自产一区二区使用方法| 亚洲一二三区在线观看| 欧美刺激午夜性久久久久久久| 国产精品69毛片高清亚洲| 亚洲乱码国产乱码精品精的特点| 7777女厕盗摄久久久| 国产福利精品一区二区| 夜夜精品浪潮av一区二区三区| 欧美一区永久视频免费观看| 国产成人精品影视| 日韩电影在线观看电影| 国产精品女同一区二区三区| 欧美亚洲自拍偷拍| 国产伦精一区二区三区| 亚洲国产成人91porn| 国产亚洲精品精华液| 欧美日韩国产美| 不卡一区二区在线| 精品一区二区久久| 亚洲综合激情网| 国产欧美一区二区精品秋霞影院| 在线影院国内精品| 国产传媒欧美日韩成人| 日韩高清不卡在线| 亚洲视频在线一区观看| 欧美不卡视频一区| 欧美三级中文字幕| 成人av电影免费在线播放| 久久成人免费日本黄色| 亚洲电影中文字幕在线观看| 国产欧美精品一区二区色综合朱莉 | 粉嫩aⅴ一区二区三区四区五区| 日韩精品免费专区| 亚洲免费在线观看视频| 欧美国产97人人爽人人喊| www精品美女久久久tv| 欧美视频在线播放| 一本一道久久a久久精品综合蜜臀| 国产乱人伦偷精品视频免下载| 日本aⅴ精品一区二区三区| 亚洲午夜免费福利视频| 一区二区三区**美女毛片| 中文字幕精品三区| 中文字幕成人av| 国产婷婷色一区二区三区在线| 欧美成人午夜电影| 日韩欧美二区三区| 欧美zozozo| 亚洲精品在线一区二区| 精品成人在线观看| 精品福利一二区| 久久精品人人做人人综合| 欧美成人一区二区三区在线观看| 日韩丝袜情趣美女图片| 日韩色视频在线观看| 欧美日韩成人综合| 91精品国产一区二区人妖| 在线不卡一区二区| 日韩欧美一区二区在线视频| 欧美一区二区三区影视| 日韩视频免费观看高清完整版| 91麻豆精品国产91久久久资源速度| 欧美日韩一区二区三区在线看| 欧美日韩在线亚洲一区蜜芽| 欧美午夜在线观看| 欧美一区二区三区男人的天堂| 欧美mv和日韩mv国产网站| 精品福利一二区| 国产精品高清亚洲| 亚洲第一综合色| 美腿丝袜在线亚洲一区| 国产一区二区导航在线播放| 成人美女视频在线观看18| 在线精品亚洲一区二区不卡| 欧美精品久久一区二区三区| 精品国产伦一区二区三区观看方式 | 国产成人高清在线| 色综合网色综合| 国产网红主播福利一区二区| 国产亚洲一区二区在线观看| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 九一九一国产精品| 成人综合日日夜夜| 91电影在线观看| 欧美一区二区精品| 国产欧美精品区一区二区三区| 曰韩精品一区二区| 国产一区二区三区免费看| 99综合电影在线视频| 欧美日韩精品二区第二页| ww亚洲ww在线观看国产| 亚洲精品成人在线| 国产高清精品在线| 7777精品伊人久久久大香线蕉的 | 蜜臀av性久久久久蜜臀aⅴ| 国产sm精品调教视频网站| 欧美日韩综合色| 欧美韩国一区二区|