µÚ¶þ²¿·Ö ¿Î³ÌÉè¼ÆÌâÄ¿
Ò»¡¢ËµÃ÷
1-5ÌâÄѶÈÏà¶Ô½ÏС£¬6ÌâÒÔÉÏÄѶȽϴó£¬Ã¿Î»Í¬Ñ§¿ÉÒÔ×Ô¼ºÑ¡ÔñÄѶȴóС£¬ÔÚÏÂÃæA¡¢BÖÐÑ¡ÔñÒ»Ìâ¼´¿É£¬×öºÃºóÉÏ´«ÈçϲÄÁÏ£º³ÌÐò¡¢¿ÉÖ´ÐÐÎļþ¡¢¿Î³ÌÉè¼Æ±¨¸æ£¨pdf¸ñʽ£©¡£Èç¹û³ÌÐòÔËÐÐʱҪ´Ó¼üÅÌÉÏÊäÈëÊý¾ÝµÄ£¬ÇëÔÚÆÁÄ»Éϸø³öÌáʾ»òÕßÔÚreadme.txtÎļþÖÐ˵Ã÷³ÌÐòµÄ²Ù×÷²½Öè¡£
A Ñ¡ÔñÄѶȽÏСµÄÌâÄ¿£ºÇë¸ù¾Ý×Ô¼ºµÄѧºÅ¼ÆËãÏàÓ¦µÄÌâºÅ£¬²»ÄÜËæÒâÑ¡ÔñÌâÄ¿£¬ÌâºÅ¼ÆËã·½·¨ÈçÏ£º
ÌâºÅ = ѧºÅÄ©Á½Î» ³ýÒÔ5µÄÓàÊý + 1 ±ÈÈ磺
ѧºÅÄ©Á½Î»ÊÇ01£¬Ôò 01³ýÒÔ5µÄÓàÊýΪ1£¬ÌâºÅ¾ÍÊÇ2 ѧºÅÄ©Á½Î»ÊÇ05£¬Ôò 05³ýÒÔ5µÄÓàÊýΪ0£¬ÌâºÅ¾ÍÊÇ1 ѧºÅÄ©Á½Î»ÊÇ09£¬Ôò 09³ýÒÔ5µÄÓàÊýΪ4£¬ÌâºÅ¾ÍÊÇ5
B Ñ¡ÔñÄѶȽϴóµÄÌâÄ¿£º Ôò¿ÉÒÔÈÎÒâÑ¡ÔñÌâ6-18ÖеÄÒ»Ìâ
¶þ¡¢ÌâÄ¿
1. ³¤ÕûÊýËÄÔòÔËËã¡£
£¨1£© ÎÊÌâÃèÊö£ºÉè¼ÆÒ»¸öʵÏÖÈÎÒⳤµÄÕûÊý½øÐмӷ¨ÔËËãµÄÑÝʾ³ÌÐò¡£
£¨2£©»ù±¾ÒªÇó£ºÀûÓÃË«ÏòÑ»·Á´±íʵÏÖ³¤ÕûÊýµÄ´æ´¢£¬Ã¿¸ö½áµãº¬Ò»¸öÕûÐαäÁ¿¡£ÈκÎÕûÐαäÁ¿µÄ·¶Î§ÊÇ -(2^15 - 1)?(2^15 - 1)¡£ÊäÈëºÍÊä³öÐÎʽ£º°´Öйú¶ÔÓÚ³¤ÕûÊýµÄ±íʾϰ¹ß£¬Ã¿ËÄλһ×飬×é¼äÓöººÅ¸ô¿ª¡£ £¨3£©²âÊÔÊý¾Ý£º
¢Ù 0£»0£»Ó¦Êä³ö¡°0¡±¡£
¢Ú -2345,6789£»-7654,3211£»Ó¦Êä³ö¡°-1,0000,0000¡±¡£
¢Û -9999,9999£»1,0000,0000,0000£»Ó¦Êä³ö¡°9999,0000,0001¡±¡£ ¢Ü 1,0001,0001£»-1,0001,0001£»Ó¦Êä³ö¡°0¡±¡£
¢Ý 1,0001,0001£»-1,0001,0000£»Ó¦Êä³ö¡°1¡±¡£
¢Þ -9999,9999,9999£»-9999,9999,9999£»Ó¦Êä³ö¡°1,9999,9999,9998¡±¡£
¢ß 1,0000,9999,9999£»1£»Ó¦Êä³ö¡°1,0001,0000,0000¡±¡£ £¨4£©ÊµÏÖÌáʾ£º
¢Ù ÿ¸ö½áµãÖпÉÒÔ´æ·ÅµÄ×î´óÕûÊýΪ32767£¬²ÅÄܱ£Ö¤Á½ÊýÏà¼Ó²»»áÒç³ö£¬µ«ÈôÕâÑù´æ·Å£¬¼´Ï൱ÓÚ°´32768½øÖÆ´æ·Å£¬ÔÚÊ®½øÖÆÓë32768½øÖÆÊýÖ®¼äµÄת»»Ê®·Ö²»·½±ã£¬¹Ê¿ÉÒÔÔÚÿ¸ö½áµãÖнö´æÊ®½øÖƵÄ4룬¼´²»³¬¹ý9999µÄ·Ç¸ºÕûÊý£¬Õû¸öÁ´±í±íʾΪÍò½øÖÆ¡£
¢Ú ¿ÉÒÔÀûÓÃÍ·½áµãÊý¾ÝÓòµÄ·ûºÅ´ú±í³¤ÕûÊýµÄ·ûºÅ¡£ÓÃÆä¾ø¶ÔÖµ±íÊ¾ÔªËØ½áµãÊýÄ¿¡£Ïà¼Ó¹ý³ÌÖв»ÒªÆÆ»µÁ½¸ö²Ù×÷ÊýÁ´±í¡£Á½²Ù×÷ÊýµÄÍ·Ö¸Õë´æÓÚÖ¸ÕëÊý×éÖÐÊǼò»¯³ÌÐò½á¹¹µÄÒ»ÖÖ·½·¨¡£²»Äܸø³¤ÕûÊýλÊý¹æ¶¨ÉÏÏÞ¡£
2. Âí̤ÆåÅÌ
(1)»ù±¾ÒªÇ󣺽«ÂíËæ»ú·ÅÔÚ¹ú¼ÊÏóÆåµÄ8?8ÆåÅÌBord[8¢ò8]µÄij¸ö·½¸ñÖУ¬Âí°´×߯å
1
¹æÔò½øÐÐÒÆ¶¯¡£ÒªÇóÿ¸ö·½¸ñÉÏÖ»½øÈëÒ»´Î£¬×ß±éÆåÅÌÉÏÈ«²¿64¸ö·½¸ñ¡£±àÖÆ·ÇµÝ¹é³ÌÐò£¬Çó³öÂíµÄÐÐ×ß·Ïß £¬²¢°´Çó³öµÄÐÐ×ß·Ïߣ¬½«Êý×Ö1£¬2£¬?£¬64ÒÀ´ÎÌîÈ롪¸ö8?8µÄ·½Õó£¬Êä³öÖ®¡£
(2)²âÊÔÊý¾Ý£ºÓɶÁÕßÖ¸¶¨,¿É×ÔÐÐÖ¸¶¨Ò»¸öÂíµÄ³õʼλÖá£
(3)ʵÏÖÌáʾ£ºÃ¿´ÎÔÚ¶à¸ö¿É×ßλÖÃÖÐÑ¡ÔñÒ»¸ö½øÐÐÊÔ̽£¬ÆäÓàÎ´ÔøÊÔ̽¹ýµÄ¿É×ßλÖñØÐëÓÃÊʵ±½á¹¹Í×ÉÆ¹ÜÀí£¬ÒÔ±¸ÊÔ̽ʧ°ÜʱµÄ¡°»ØËÝ¡±(»ÚÆå)ʹÓá£
3. У԰µ¼ÓÎ×Éѯ
£¨1£©»ù±¾ÒªÇó£º
¢Ù Éè¼ÆÄãµÄѧУµÄÐ£Ô°Æ½ÃæÍ¼£¬Ëùº¬¾°µã²»ÉÙÓÚ10¸ö¡£ÒÔͼÖж¥µã±íʾѧУ¸÷¾°µã£¬´æ·Å¾°µãÃû³Æ¡¢´úºÅ¡¢¼ò½éµÈÐÅÏ¢£»ÒԱ߱íʾ·¾¶£¬´æ·Å·¾¶³¤¶ÈµÈÏà¹ØÐÅÏ¢¡£
¢Ú ΪÀ´·Ã¿ÍÈËÌṩͼÖÐÈÎÒâ¾°µãµÄÎÊ·²éѯ£¬¼´²éѯÈÎÒâÁ½¸ö¾°µãÖ®¼äµÄÒ»Ìõ×î¶ÌµÄ¼òµ¥Â·¾¶¡£
¢Û ΪÀ´·Ã¿ÍÈËÌṩͼÖÐÈÎÒâ¾°µãÏà¹ØÐÅÏ¢µÄ²éѯ¡£ £¨2£©²âÊÔÊý¾Ý£ºÓɶÁÕ߸ù¾Ýʵ¼ÊÇé¿öÖ¸¶¨¡£
£¨3£©ÊµÏÖÌáʾ£ºÒ»°ãÇé¿öÏ£¬Ð£Ô°µÄµÀ·ÊÇË«ÏòͨÐеģ¬¿ÉÉèÐ£Ô°Æ½ÃæÍ¼ÊÇÒ»¸öÎÞÏòÍø¡£¶¥µãºÍ±ß¾ùº¬ÓÐÏà¹ØÐÅÏ¢¡£
4. B-Trees µÄʵÏÖ¼°·ÖÎö (1) ÎÊÌâÃèÊö
B-Trees ÊÇÒ»ÀàÂú×ãÌØÊâÌõ¼þµÄM ·²éÕÒÊ÷¡£Ê×ÏÈ˵Ã÷M ·²éÕÒÊ÷£¬M ·²éÕÒÊ÷ÊǶþÔª²éÕÒÊ÷µÄÒ»°ã»¯£¬Æä½á¹¹ÈçÏÂͼËùʾµÄ3 ·²éÕÒÊ÷£ºM ·²éÕÒÊ÷ÖеÄÈÎÒ»½áµãÖÁ¶à´æ·ÅM-1¸öÊý¾Ý£¬²¢ÖÁ¶àÓµÓÐM¿Ã×ÓÊ÷£»Ã¿¸ö½áµãÖеÄÊý¾Ý°´ÉýÐòÅÅÁÐV1 < V2 < ...Vk (k <= M-1)£¬Ã¿¸öÊý¾ÝVi ¶¼´æÔÚÒ»¿Ã×ó×ÓÊ÷ºÍÒ»¿ÃÓÒ×ÓÊ÷£¬Èç¹û×ó×ÓÊ÷²»¿ÕµÄ»°£¬¸Ã×ÓÊ÷ÖÐËùÓнáµãµÄÖµ¶¼Ð¡ÓÚVi,Èç¹ûÓÒ×ÓÊ÷²»¿ÕµÄ»°£¬¸Ã×ÓÊ÷ÖÐËùÓнáµãµÄÖµ¶¼´óÓÚVi¡£
ͼ1 3-·²éÕÒÊ÷µÄ½á¹¹Ê¾Òâͼ
B-Trees ÊÇÂú×ãÈçÏÂÁ½¸öÌõ¼þµÄM ·²éÕÒÊ÷£º ¢Ù ËùÓÐÒ¶½áµãµÄ¸ß¶ÈÏàͬ¡£
¢Ú ³ý¸ùÖ®ÍâµÄËùÓнáµã¶¼ÖÁÉÙÊǰëÂúµÄ£¬¼´¸Ã½áµã°üº¬M/2 »ò¸ü¶àµÄÖµ¡£ ÏÂͼÊÇÒ»¸öB-Ê÷µÄʵÀý¡£
2
ͼ2 3-·B-Ê÷µÄ½á¹¹Ê¾Òâͼ
(2) ¿Î³ÌÉè¼ÆÄ¿µÄ ÈÏʶ²¢·ÖÎöB-Ê÷¡£ (3) »ù±¾ÒªÇó
¢Ù ʵÏÖÔÚB-Ê÷ÉϵIJéÕÒ£¬²¢·ÖÎöÆäʱ¼ä¸´ÔÓÐÔ¡£
¢Ú ʵÏÖB-Ê÷µÄADT£¬°üÀ¨ÆäÉϵĻù±¾²Ù×÷£º½áµãµÄ¼ÓÈëºÍɾ³ý¡£ ¢Û ÒªÇóB-Ê÷½á¹¹ÖеÄM=3 »ò5£¬ÊµÏÖÆäÖеÄÒ»ÖÖ¼´¿É¡£ ¢Ü ʵÏÖ»ù±¾²Ù×÷µÄÑÝʾ¡£ (4) ʵÏÖÌáʾ
Ö÷Òª¿¼ÂǽáµãµÄ·ÖÁѺͺͲ¢¡£
5. AVL Tree µÄʵÏÖ¼°·ÖÎö (1) ÎÊÌâÃèÊö
AVL(Adelson-Velskii and Landis)Ê÷ÊÇÒ»ÖêÆ½ºâµÄ¶þÔª²éÕÒÊ÷¡£Ò»ÖêÆ½ºâµÄ¶þÔªÊ÷¾ÍÊÇÖ¸¶ÔÆäÿһ¸ö½áµã£¬Æä×ó×ÓÊ÷ºÍÓÒ×ÓÊ÷µÄ¸ß¶ÈÖ®²î²»³¬¹ý1¡£ÏÂͼ¾ÍÊÇÒ»¸öAVL Ê÷µÄʵÀý¡£
ͼ3 AVL Ê÷µÄ½á¹¹Ê¾Òâͼ
(2) ¿Î³ÌÉè¼ÆÄ¿µÄ
ÈÏʶAVL Tree Êý¾Ý½á¹¹¡£
±àд³ÌÐòʵÏÖAVL Ê÷µÄÅб𣻲¢ÊµÏÖAVL Ê÷µÄADT£¬°üÀ¨ÆäÉϵĻù±¾²Ù×÷£º½áµãµÄ¼ÓÈëºÍɾ³ý¡£BST ºÍAVL µÄ²î±ð¾ÍÔÚÆ½ºâÐÔÉÏ£¬ËùÒÔAVL µÄ²Ù×÷¹Ø¼üÒª¿¼ÂÇÈçºÎÔÚ±£³Ö¶þÔª²éÕÒÊ÷¶¨ÒåÌõ¼þ϶ԶþÔªÊ÷½øÐÐÆ½ºâ»¯¡£ (3) »ù±¾ÒªÇó
¢Ù ±àдAVL Ê÷Åбð³ÌÐò£¬²¢ÅбðÒ»¸ö¶þÔª²éÕÒÊ÷ÊÇ·ñΪAVL Ê÷¡£¶þÔª²éÕÒÊ÷ÓÃÆäÏÈÐò±éÀú½á¹û±íʾ£¬È磺5£¬2£¬1£¬3£¬7£¬8¡£
3
¢Ú ʵÏÖAVL Ê÷µÄADT£¬°üÀ¨ÆäÉϵĻù±¾²Ù×÷£º½áµãµÄ¼ÓÈëºÍɾ³ý£»ÁíÍâ°üÀ¨½«Ò»°ã¶þÔª²éÕÒÊ÷ת±äΪAVL Ê÷µÄ²Ù×÷¡£ (4) ʵÏÖÌáʾ
Ö÷Òª¿¼ÂÇÊ÷µÄÐýת²Ù×÷¡£
6£®ÒÅ´«Ëã·¨µÄÄ£Äâ (1) ÎÊÌâÃèÊö
ÒÅ´«Ëã·¨ÊÇÒÔ´ï¶ûÎÄÉúÎï½ø»¯ÂÛΪ»ù´¡£¬½è¼ø×ÔÈ»½çÖÐÎïÖÖ½ø»¯ÔÀí£¬ÒÀ¾ÝÓÅʤÁÓ̶ø´ïµ½ÓÅ»¯µÄ¹æÂɶø´´½¨µÄÒ»ÖÖÊýѧģÐͺÍËã·¨£¬ÈçÏÂͼËùʾ¡£
ͼ4 ÒÅ´«Ëã·¨µÄÉúÎïѧ±³¾°
¸ÃͼÒÔСÂóÆ·ÖÖ¸ÄÁ¼µÄ¹ý³ÌΪÀý˵Ã÷ÒÅ´«Ëã·¨£¨Ò²¿É³ÆÎª»ùÒòËã·¨£©µÄ»ù±¾ÔÀí£ºÓÅ»¯ÎÊÌâµÄ¿ÉÄܽⱻ³ÆÎªÊǸöÌ壨individuals£©£¬Ê×ÏÈ¿¼ÂÇ¿ÉÄܽ⣨¸öÌ壩×é³ÉµÄ¼¯ºÏ£¬¼´ÈºÌå
£¨population£©£»È»ºóÒÀ¾Ý»·¾³ÌØÕ÷£¨ÓÅ»¯ÎÊÌâÌØÕ÷£©ÆÀ¶¨¸÷¸öÌåµÄÓÅÁÓ£¨ÆäÊÊÓ¦¶È£¨fitness£©À´¶¨Ò壩£»¶ÔÊÊÓ¦¶È½Ï²îµÄ¸öÌå½øÐÐÌÔÌ£¬Ñ¡È¡ÊÊÓ¦¶ÈºÃµÄ¸öÌ壨Àà±ÈÉúÎïÑ¡Ôñ£©£¬ÔÚÆäÉϽøÐÐÔÓ½»£¬±äÒìµÈ²Ù×÷ÐγÉеÄȺÌ壻×îºóÔÙ½øÈëÏÂÒ»ÂÖÒÅ´«½ø»¯£¬ÉÏÊö¹ý³Ì²»¶Ïµü´ú£¬Ö±µ½ÈºÌåÂú×ãÁËijÌõ¼þ£¬´Ëʱ³öÏÖÁËÂú×ãÒªÇóµÄÓÅ»¯½â¡£½«ÉÏÊö¹ý³ÌÐÎʽ»¯ºó¾ÍµÃµ½ÈçÏÂͼËùʾµÄÒÅ´«Ëã·¨½á¹¹¿òͼ£º
4