心胸决定格局,眼界决定境界...

哈希表算法实现

http://blog.csdn.net/jdh99/article/details/8490704

#define HASH_TABLE_LEN  100 

每一行,余数相同

如图:  table[1]  存的下一个节点的id是1,而id为1的节点指向下一个节点的id为101,最后101的节点指向的下一个为空结尾。

Hash_Header_Ptr Hash_Table[HASH_TABLE_LEN]; 

  1. //哈希表头  
  2. typedef struct _Hash_Header    
  3. {    
  4.     struct _Link_Node *next;    
  5. }Hash_Header,*Hash_Header_Ptr;

 

  1. //链表节点  
  2. typedef struct _Link_Node    
  3. {    
  4.     uint16_t id;  
  5.     uint16_t data;  
  6.     struct _Link_Node *next;    
  7. }Link_Node,*Link_Node_Ptr;  

1.简单的哈希算法:建立表长,求余。

2.根据求余快速分组,快速查找。

3.返回查找的前一个节点,便于删除操作。

posted @ 2016-10-09 14:21  WELEN  阅读(123)  评论(0)    收藏  举报