Hashing — Selfie II Index   <<   >>


 
For   y e. x or y∊x
 
Store indexin hash table, with -1 indicating free entry

DO(xn, h=HF(x[i]); while(*h>=0&&x[*h]!=x[i])if(hm==++h)h=h0; if(*h<0 )*h=i;   );
DO(yn, h=HF(y[i]); while(*h>=0&&x[*h]!=y[i])if(hm==++h)h=h0; *z++=*h>=0;      );

Store value itselfin hash table, withindicating free entry

DO(xn, h=HF(x[i]); while(*h!=M&&  *h !=x[i])if(hm==++h)h=h0; if(*h==M)*h=x[i];);
DO(yn, h=HF(y[i]); while(*h!=M&&  *h !=y[i])if(hm==++h)h=h0; *z++=*h!=M;      );

M = -2147483648 or 2147483647
factor of 1.18 to 1.23