码迷,mamicode.com
首页 > 其他好文 > 详细

建立简单的Hash table(哈希表)by C language

时间:2017-11-11 18:48:42      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:建立   code   sha   color   简单的   define   log   包括   添加   

 

 1 #define SIZE 1000    //定义Hash table的初始大小
 2 struct HashArray
 3 {
 4     int key;
 5     int count;
 6     struct Array* next;
 7 }Hash[SIZE];       //主函数中需要初始化
 8 void addHash(int num)     //在Hash table中添加数据
 9 {
10     int temp=abs(num%SIZE);     //添加的数据可包括负数
11     if(Hash[temp].key==0)
12     {
13         Hash[temp].key=num;
14         Hash[temp].count++;
15     }else if(Hash[temp].key==num)
16     {
17         Hash[temp].count++;     
18     }else
19     {
20         struct HashArray *p=&Hash[temp]; 
21         while(p->key!=num&&p->next!=NULL)    
22         {p=p->next;}
23         if(p->key==num)
24         {p->count++;}
25         else
26         {
27             p->next=(struct HashArray*)malloc(sizeof(struct HashArray));
28             p=p->next;
29             p->key=num;
30             p->count=1;
31             p->next=NULL;
32         }
33     }   
34 } 

 

建立简单的Hash table(哈希表)by C language

标签:建立   code   sha   color   简单的   define   log   包括   添加   

原文地址:http://www.cnblogs.com/Blue-Keroro/p/7819472.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!