A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 瑞雪雄起 中级黑马   /  2015-9-28 16:43  /  394 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

#include<stdio.h>
#include<stdlib.h>
typedef struct Node
{
int key;
int data;
struct Node *next;
}TNode;
int hash(int key)
{
return key%7;
}
int search(int key,TNode *a[])
{
int index=hash(key);
TNode *h=a[index];
int data;
while(true)
{
if((data=h->data)==key)
return data;
else
{
h=h->next;
if(h==NULL)
{
printf("查找失败\n");
return -1;}}}
}
void main()
{
TNode *a[10]={NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
TNode *s;
for(int i=1;i<10;i++)
{
int index=hash(i);
s=(TNode *)malloc(sizeof(TNode));
s->data=i*25;
s->key=i;
s->next=a[index];
a[index]=s;
}
int key;
printf("Key=");
scanf("%d",&key);
printf("Key=%d  Value:%d\n",key,search(key,a));
}

1 个回复

倒序浏览
哈希哈希~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马