13/02/24 20:03:11.88
>>305 続き3
int InsertBucket(Hash *h,Data *x){
int i;
int key=hash(x->no);
Bucket *p=&h->table[key];
if(SearchBucket(h,x))
return 1;
for(i=0;i<h->size;i++){
if(p->stat==Empty || p->stat ==Deleted){
SetBucket(p,*x,Occupied);
return 0;}
key=rehash(key);
p=&h->table[key];}
return 2;}
return NULL;}
int DeleteBucket(Hash *h,Data *x){
Bucket *p=SearchBucket(h,x);
if(p==NULL)
return 1;
p->stat=Deleted;
return 0;}