大家好,又见面了,我是你们的朋友全栈君。
#include <stdio.h> const int maxN = 100010; bool hashTable[maxN] = { false}; int main() { int i, n, m, x; printf("请输入集合n和集合m中元素的个数分别为:"); scanf("%d%d", &n, &m); printf("请输入集合n中的元素:"); for(i = 0; i < n; i++) { scanf("%d", &x); hashTable[x] = true; //数字x出现过 } printf("请输入集合m中的元素:"); for(i = 0; i < m; i++) { scanf("%d", &x); if(hashTable[x] == true) { printf("yes\n"); } else { printf("no\n"); } } return 0; }
#include <stdio.h> const int maxN = 100010; int hashTable[maxN] = { 0}; int main() { int i, n, m, x; printf("请输入集合n和集合m中元素的个数分别为:"); scanf("%d%d", &n, &m); printf("请输入集合n中的元素:"); for(i = 0; i < n; i++) { scanf("%d", &x); hashTable[x]++; } printf("请输入集合m中的元素:"); for(i = 0; i < m; i++) { scanf("%d", &x); printf("%d \n",hashTable[x]); } return 0; }
int hashFunc(char S[], int len) { int id = 0; for(int i = 0; i < len; i++) { id = id * 26 + (S[i] - 'A'); } return id; }
int hashFunc(char S[], int len) { //散列函数,将字符串S转化为整数 int id = 0; for(int i = 0; i < len; i++) { if(S[i] >= 'A' && S[i] <= 'Z') { id = id * 52 + (S[i] - 'A'); } else if(S[i] > 'a' && S[i] < 'z') { id = id * 52 + (S[i] - 'A') + 26; } } return id; }
转载于:https://www.cnblogs.com/xinmomoyan/p/10745800.html
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/106866.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...