C语言实现哈希表的相关运算算法 编写程序实现哈希表的构造过程。

C语言实现哈希表的相关运算算法 编写程序实现哈希表的构造过程。,第1张

#define MaxSize 100 //定义最大哈希表长度

#define NULLKEY -1 //定义空关键字

#define DELKEY -2 //定义被删关键字值

typedef int KeyType //关埋孝键字类型

typedef char * InfoType //其他数据类型

typedef struct

{

KeyType key //关键字域

InfoType data //其他数据域

int count //探查次数域

} HashData

typedef HashData HashTable[MaxSize] //哈希表类型

void InsertHT(HashTable ha,int &n,KeyType k,int p) /薯世/将关键字k插入到哈希表中

{

int i,adr

adr=k % p

if (ha[adr].key==NULLKEY || ha[adr].key==DELKEY)//x[j]可以直接放在哈希表中

{

ha[adr].key=k

ha[adr].count=1

}

else//发生冲突时采用线性探弯手稿查法解决冲突

{

i=1 //i记录x[j]发生冲突的次数

do

{

adr=(adr+1) % p

i++

}

while (ha[adr].key!=NULLKEY &&ha[adr].key!=DELKEY)

ha[adr].key=k

ha[adr].count=i

}

n++

}

void CreateHT(HashTable ha,KeyType x[],int n,

呵呵基搜,工程浩大,给你提供一个思路:

1、Calendar类的对象可以直旦塌接设置日期和时间属性;

2、用switch-case语句判断一个时间段已经过了多少或还剩多少(遍历);

3、可以用javax.swing.Timer类进行秒计时(它可以指定时间触发事件);

呵呵,搏迟历主要还是时间计算方面比较麻烦,谁有好的方法发上来大家学习嘛。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12424970.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存