Êý¾Ý½á¹¹¿Î³ÌÉè¼Æ±¨¸æ ÁªÏµ¿Í·þ

·¢²¼Ê±¼ä : ÐÇÆÚËÄ ÎÄÕÂÊý¾Ý½á¹¹¿Î³ÌÉè¼Æ±¨¸æ¸üÐÂÍê±Ï¿ªÊ¼ÔĶÁ1ea4d0bafd0a79563c1e726d

¡¶Êý¾Ý½á¹¹¡·¿Î³ÌÉè¼Æ

¹þÏ£±íʵÏֵ绰ºÅÂë²éѯϵͳ

Ò» Ä¿µÄ

ÀûÓá¶Êý¾Ý½á¹¹¡·¿Î³ÌµÄÏà¹Ø֪ʶÍê³ÉÒ»¸ö¾ßÓÐÒ»¶¨ÄѶȵÄ×ÛºÏÉè¼ÆÌâÄ¿£¬ÀûÓÃC/C++ÓïÑÔ½øÐгÌÐòÉè¼Æ£¬²¢¹æ·¶µØÍê³É¿Î³ÌÉè¼Æ±¨¸æ¡£Í¨¹ý¿Î³ÌÉè¼Æ£¬¹®¹ÌºÍ¼ÓÉî¶ÔÏßÐÔ±í¡¢Õ»¡¢¶ÓÁС¢×Ö·û´®¡¢Ê÷¡¢Í¼¡¢²éÕÒ¡¢ÅÅÐòµÈÀíÂÛ֪ʶµÄÀí½â£»ÕÆÎÕÏÖʵ¸´ÔÓÎÊÌâµÄ·ÖÎö½¨Ä£ºÍ½â¾ö·½·¨£¨°üÀ¨ÎÊÌâÃèÊö¡¢ÏµÍ³·ÖÎö¡¢Éè¼Æ½¨Ä£¡¢´úÂëʵÏÖ¡¢½á¹û·ÖÎöµÈ£©£»Ìá¸ßÀûÓüÆËã»ú·ÖÎö½â¾ö×ÛºÏÐÔʵ¼ÊÎÊÌâµÄ»ù±¾ÄÜÁ¦¡£

¶þ ÐèÇó·ÖÎö

1¡¢ ³ÌÐòµÄ¹¦ÄÜ

1)

¶ÁÈ¡Êý¾Ý

¢Ù ¶ÁÈ¡Ô­µç»°±¾´æ´¢µÄµç»°ÐÅÏ¢¡£

¢Ú ¶ÁȡϵͳËæ»úн¨µç»°±¾´æ´¢µÄµç»°ÐÅÏ¢¡£ 2)

²éÕÒÐÅÏ¢

¢Ù ¸ù¾Ýµç»°ºÅÂë²éѯÓû§ÐÅÏ¢¡£ ¢Ú ¸ù¾ÝÐÕÃû²éѯÓû§ÐÅÏ¢¡£ 3)

´æ´¢ÐÅÏ¢

²éѯÎ޼ǼµÄ½á¹û´æÈë¼Ç¼Îĵµ¡£

2¡¢ Êä³öÐÎʽ

1) Êý¾ÝÎļþ¡°old.txt¡±´æ·Åԭʼµç»°ºÅÂëÊý¾Ý¡£

2) Êý¾ÝÎļþ¡°new.txt¡±´æ·ÅÓÐϵͳËæ»úÉú³ÉµÄµç»°ºÅÂëÎļþ¡£ 3) Êý¾ÝÎļþ¡°out.txt¡±´æ·Åδ²éÕÒµ½µÄµç»°ÐÅÏ¢¡£ 4) ²éÕÒµ½Ïà¹ØÐÅϢʱÏÔʾÐÕÃû¡¢µØÖ·¡¢µç»°ºÅÂë¡£

3¡¢ ³õ²½²âÊԼƻ®

1) ´ÓÊý¾ÝÎļþ¡°old.txt¡±ÖжÁÈë¸÷Ïî¼Ç¼£¬»òÓÉϵͳËæ»ú²úÉú¸÷¼Ç¼£¬²¢ÇҰѼǼ±£´æ

µ½¡°new.txt¡±ÖÐ ¡£

2) ·Ö±ð²ÉÓÃαËæ»ú̽²âÔÙÉ¢Áз¨ºÍÔÙ¹þÏ£·¨½â¾ö³åÍ»¡£ 3) ¸ù¾ÝÐÕÃû²éÕÒʱÏÔʾ¸ø¶¨ÐÕÃûÓû§µÄ¼Ç¼¡£ 4) ¸ù¾Ýµç»°ºÅÂë²éÕÒʱÏÔʾ¸ø¶¨µç»°ºÅÂëµÄÓû§¼Ç¼¡£

xxxx´óѧxxxxѧԺxxxxרҵ ѧºÅ£º xxxxxxx ÐÕÃû £ºjenery6 1

¡¶Êý¾Ý½á¹¹¡·¿Î³ÌÉè¼Æ

5) ½«Ã»ÓвéÕҵĽá¹û±£´æµ½½á¹ûÎļþOut.txtÖС£

6) ϵͳÒԲ˵¥½çÃ湤×÷£¬ÔËÐнçÃæÓѺã¬ÑÝʾ³ÌÐòÒÔÓû§ºÍ¼ÆËã»úµÄ¶Ô»°·½Ê½½øÐС£

Èý ¸ÅÒªÉè¼Æ

1¡¢ ×Óº¯Êý¹¦ÄÜ

int Collision_Random(int key,int i) //αËæ»úÊý̽Á¿¹Û²âÔÙÉ¢Áз¨´¦Àí³åÍ»

void Init_HashTable_by_name(string name,string phone,string address) //ÒÔÐÕÃûΪ¹Ø¼ü×Ö½¨Á¢¹þÏ£±í

int Collision_Rehash(int key,string str) //ÔÙ¹þÏ£·¨´¦Àí³åÍ»

void Init_HashTable_by_phone(string name,string phone,string address) //ÒԵ绰ºÅÂëΪ¹Ø¼ü×Ö½¨Á¢¹þÏ£±í void Outfile(string name,int key)

//ÔÚûÓÐÕÒµ½Ê±Êä³öδÕÒµ½µÄ¼Ç¼£¬´ò¿ªÎļþout.txt²¢½«¼Ç¼´¢´æÔÚÎĵµÖÐ void Outhash(int key) //Êä³ö¹þÏ£±íÖеļǼ void Rafile()

//Ëæ»úÉú³ÉÊý¾Ý£¬²¢½«Êý¾Ý±£´æÔÚnew.txt void Init_HashTable(char*fname,int n) //½¨Á¢¹þÏ£±í

int Search_by_name(string name) //¸ù¾ÝÐÕÃû²éÕÒ¹þÏ£±íÖеļǼ int Search_by_phone(string phone) //¸ù¾Ýµç»°ºÅÂë²éÕÒ¹þÏ£±íÖеļǼ

xxxx´óѧxxxxѧԺxxxxרҵ ѧºÅ£º xxxxxxx ÐÕÃû £ºjenery6 2

¡¶Êý¾Ý½á¹¹¡·¿Î³ÌÉè¼Æ

2¡¢ º¯Êýµ÷ÓÃͼ

main()Refile()init-hashtable()init-hashtable-by-name()init-hashtable-by-phone()Seach-by-name()Seach-by-phone()Coiiision-random()Collision-rehash()Outhash()xxxx´óѧxxxxѧԺxxxxרҵ ѧºÅ£º xxxxxxx ÐÕÃû £ºjenery6 3

¡¶Êý¾Ý½á¹¹¡·¿Î³ÌÉè¼Æ

ËÄ ÏêϸÉè¼Æ

1¡¢ Ö÷º¯ÊýÁ÷³Ìͼ

¿ªÊ¼Ñ¡ÔñÊý¾ÝÀ´Ô´21½¨¡°new.txt¡±Ñ¡Ôñ²éÕÒ·½Ê½12ÐÕÃû²éÕҵ绰ºÅÂë²éÕÒ12021ÊäÈëÐÕÃûÏÔʾ¹þÏ£±í0ÏÔʾ¹þÏ£±íÊäÈëµç»°ºÅÂëÎ޴˼ǼÏÔʾÐÅÏ¢Î޴˼ǼÏÔʾÐÅÏ¢0дÈë¡°out.txt¡±Ð´Èë¡°out.txt¡±

½áÊø

2¡¢ ¡°Î±Ëæ»ú̽²âÔÙÉ¢Áд¦Àí³åÍ»¡±Î±´úÂë

Èô¶ÔӦλÖÃÉÏÒѾ­´æÔÚÆäËûÊý¾Ý£¬ÔòеĹؼü×Ö=£¨Ô­¹Ø¼ü×Ö+αËæ»úÊý£©% ¹þÏ£±í³¤¡£

ÈôеÄλÖÃÉÏÒ²´æÔÚÆäËûÊý¾Ý£¬ÔòÓÃαËæ»úÐòÁеÄÏÂÒ»¸öÊýÇóеĹؼü×Ö£¬Ö±µ½ÕÒµ½ºÏÊʵÄλÖá£

3¡¢ ¡°ÔÙ¹þÏ£·¨´¦Àí³åÍ»¡±Î±´úÂë

Óá°ÕÛµþ·¨¡±½«µç»°ºÅÂëµÄASCIIÂëÖµ¶¨ÒåΪ¹Ø¼ü×Ö£¬·Ö±ðΪǰËÄλ¡¢ÖÐËÄλ¡¢ºóÈýλ¡£

xxxx´óѧxxxxѧԺxxxxרҵ ѧºÅ£º xxxxxxx ÐÕÃû £ºjenery6 4