首页 > 其他 > 详细

哈希表

时间:2020-02-29 00:19:33      阅读:52      评论:0      收藏:0      [点我收藏+]
#include<iostream> #include<vector> using namespace std; struct listnode { int val; listnode* next; listnode(int x):val(x),next(NULL){} }; int hash_index(int key, int table_len) { return key % table_len; } void insert(listnode *table[], listnode* node, int table_len) { int index = hash_index(node->val, table_len); node->next = table[index]; table[index] = node; } bool hash_search(listnode *table[], int val, int table_len) { int index = hash_index(val,table_len); listnode* head = table[index]; while(head) { if(head->val == val) return true; head = head->next; } return false; } int main() { const int table_len = 11; listnode *table[table_len] ={0}; vector<listnode*> listnode_vec; int test[8] = {1,2,33,55,11,6,88,44}; for(int i = 0; i < 8; i++) { listnode_vec.push_back(new listnode(test[i])); } for(int i = 0; i < listnode_vec.size(); i++) insert(table, listnode_vec[i], table_len); printf("Hashtable:\n"); for(int i = 0; i < table_len; i++) { printf("[%d]",i); listnode* head = table[i]; while(head) { printf("->[%d]",head->val); head = head->next; } printf("\n"); } return 0; }

技术分享图片

哈希表

原文:https://blog.51cto.com/14472348/2474344

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!