哈希算法c语言
时间: 2023-08-24 22:15:21 浏览: 108
哈希算法C语言实现
3星 · 编辑精心推荐
哈希算法是一种将任意长度的数据映射为固定长度数据的算法,常用于数据加密、数据压缩和唯一标识等领域。
以下是一个简单的哈希算法的C语言代码示例:
```c
#include <stdio.h>
#include <string.h>
#define HASH_SIZE 1000 // 哈希表大小
#define MAX_LEN 100 // 字符串最大长度
int hash_table[HASH_SIZE];
// 哈希函数
int hash(char* str) {
int hash_val = 0;
for (int i = 0; i < strlen(str); i++) {
hash_val += str[i];
}
return hash_val % HASH_SIZE;
}
// 插入哈希表
void insert(char* str) {
int index = hash(str);
hash_table[index]++;
}
// 查找哈希表
int find(char* str) {
int index = hash(str);
return hash_table[index];
}
int main() {
char str[MAX_LEN];
printf("请输入字符串:");
scanf("%s", str);
insert(str);
printf("%s 在哈希表中出现了 %d 次。\n", str, find(str));
return 0;
}
```
该程序中使用了一个固定大小的哈希表,将字符串映射为哈希表中的索引,并在该索引处记录该字符串出现的次数。可以根据需求调整哈希表大小和字符串最大长度。
阅读全文