• 大小: 24KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-07
  • 语言: 其他
  • 标签:

资源简介

散列表是一种存储结构,是和链表,数组不同的存储结构,其存储位置是有存储数据而定的,本题中,有学生姓名、住址和电话号码,输入学生姓名,将拼音字母转化成阿克斯码,将所有的阿克斯码加起来与20取余数得到的数字是该数据的存储位置,电话号码是是直接数字相加与20取余数得到的存储地址,可以实现学生的记录添加,查找记录删除记录和现实所有记录等功能。

资源截图

代码片段和文件信息

#include
#include 
#include 
#include 
#define NULL 0 

unsigned int key; //存放手机号相加取余后的关键字
unsigned int key2; //存放姓名的阿克斯码相加取余后的关键字

struct Node //定义结点 

char name[8];//姓名
char address[20]; //地址
char num[11]; //电话号码
struct Node * next; //指向下一个结点指针
}; 

typedef Node* pNode; 
typedef Node* pName; 
Node **phone; 
Node **nam; 

void hash(char num[11])         //电话号码哈希函数 

int i = 3; 
key=(int)num[2];      //此处的带括号的是表示强制类型转化还是提示所指的是整形数字

while(num[i]!=NULL) 

key+=(int)num[i]; 
i++; 

key=key%20;        //取二位后的非零电话号码数字之和与20取余数作为地址值无返回值

void hash2(char name[8])          //姓名哈希函数,得到存储地址

int i = 1; 
key2=(int)name[0]; 

while(name[i]!=NULL) 

key2+=(int)name[i]; 
i++; 


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2013-11-07 19:11  散列表的设计与实现\
     文件         162  2013-11-07 19:11  散列表的设计与实现\~$表的设计与实现报告.docx
     文件        4893  2013-06-27 11:05  散列表的设计与实现\散列表的设计与实现.cpp
     文件       25155  2013-06-25 11:29  散列表的设计与实现\散列表的设计与实现报告.docx

评论

共有 条评论