ÔÙÒ麺ŵËþÒ»
(2007-05-01 23:00)
·ÖÀࣺ Êý¾Ý½á¹¹
ººÅµËþ×÷ΪµÝ¹é»ò¶ÑÕ»µÄ¾µäÀýÌâ´æÔÚÓÚ¸÷ÖÖÊý¾Ý½á¹¹£¬³ÌÐòÉè¼ÆËã·¨µÈ¸÷ÖÖÊé¼®ÖдæÔںöàÄêÁË¡£È»¶ø£¬¿ÉÄÜÓÐÈ˲¢²»ÖªµÀººÅµËþµÄÎÊÌâµÄµä¹Ê£¬ººÅµËþÀ´Ô´ÓÚÓ¡¶È´«ËµµÄÒ»¸ö¹ÊÊ£¬Éϵ۴´ÔìÊÀ½çʱ×÷ÁËÈý¸ù½ð¸ÕʯÖù×Ó£¬ÔÚÒ»¸ùÖù×ÓÉÏ´ÓÏÂÍùÉϰ´´óС˳ÐòÞû×Å64Ƭ»Æ½ðÔ²ÅÌ¡£ÉϵÛÃüÁîÆÅÂÞÃŰÑÔ²ÅÌ´ÓÏÂÃæ¿ªÊ¼°´´óС˳ÐòÖØÐ°ڷÅÔÚÁíÒ»¸ùÖù×ÓÉÏ¡£²¢Çҹ涨£¬ÔÚСԲÅÌÉϲ»ÄÜ·Å´óÔ²ÅÌ£¬ÔÚÈý¸ùÖù×ÓÖ®¼äÒ»»ØÖ»ÄÜÒÆ¶¯Ò»¸öÔ²ÅÌ¡£ÓÐÔ¤ÑÔ˵£¬Õâ¼þÊÂÍê³ÉʱÓîÖæ»áÔÚһ˲¼äÉÁµçʽ»ÙÃð¡£Ò²ÓÐÈËÏàÐÅÆÅÂÞÃÅÖÁ½ñÈÔÔÚÒ»¿Ì²»Í£µØ°á¶¯×ÅÔ²ÅÌ¡£¶÷£¬µ±È»Õâ¸ö´«Ëµ²¢²»¿ÉÐÅ£¬Èç½ñººÅµËþ¸ü¶àµÄÊÇ×÷Ϊһ¸öÍæ¾ß´æÔÚ¡£
×î½üÔÚº¼µçÉÏ×öÁ˼¸Ìâ¹ØÓÚººÅµËþµÄÌâÄ¿£¬ÓеãÐĵã¬ÏÖ¼ÇÏ£¬È¨µ±×öÌâ±Ê¼Ç¡£
Ò»£¬¾µäººÅµËþ
ÎÊÌâÃèÊö£º¼ÙÉèÓÐ3¸ö·Ö±ðÃüÃûΪX£¬Y£¬ZµÄËþ×ù£¬ÔÚËþ×ùXÉϲåÓÐn¸öÖ±¾¶´óС¸÷²»Ïàͬ¡¢ÒÀСµ½´ó±àºÅΪ1£¬2£¬¡¡n¸öÔ²ÅÌ¡£ÏÖÒªÇó½«XÖáÉϵÄn¸öÔ²ÅÌÒÆÖÁËþ×ùZÉϲ¢ÈÔ°´Í¬Ñù˳ÐòµþÅÅ£¬Ô²ÅÌÒÆ¶¯Ê±±ØÐë×ñÊØÏÂÁйæÔò£º
£¨1£©Ã¿´ÎÖ»ÄÜÒÆ¶¯Ò»¸öÔ²ÅÌ£»
£¨2£©Ô²ÅÌ¿ÉÒÔ²åÔÚX£¬YºÍZÖеÄÈÎÒ»Ëþ×ùÉÏ£»
£¨3£©ÈκÎʱ¿Ì¶¼²»Äܽ«Ò»¸ö½Ï´óµÄÔ²ÅÌѹÔÚ½ÏСµÄÔ²ÅÌÖ®ÉÏ¡£
Çón¸öÅÌÖÁÉÙÐèÒÆ¶¯µÄ´ÎÊý¡£
·ÖÎö£ºÉèF[n]±íʾ½«n¸öÅÌ´Ó°´¹æÔò´ÓXÖùÒÆµ½ZÖùÖÁÉÙÐèÒªÒÆ¶¯µÄ´ÎÊý£¬ÏÔÈ»£¬µ±n=1ʱ£¬F[n]=1£»µ±n>1ʱ£¬ÎÒÃǽ«Òƶ¯ÅÌÖ®µÄ¹ý³Ì·ÖΪÈý²½£º
1£¬½«XÖùÉϵÄn-1¸öÅÌÒÀ¿¿ZÖùÒÆµ½YÖùÉÏ£¬Õâ¸öÐèÒªF[n-1]²½£»
2£¬½«XÖùÉÏʣϵÄÒ»¸öÅÌ£¨×î´óµÄÅÌ£©ÒƵ½ZÖùÉÏ£¬Õâ¸öÐèÒª1²½£»
3£¬½«YÖùÉϵÄn-1¸öÅÌÒÀ¿¿XÖùÒÆµ½ZÖùÉÏ£¬Õâ¸öÐèÒªF[n-1]²½£»
ËùÒÔÒÆÍên¸öÖÁÉÙÐèÒªµÄ²½ÊýF[n]=F[n-1]+1+F[n-1]=2*F[n-1]+1; ¶øF[1]=1£»ÓÉÒÔÉÏÁ½¸öµÈʽ¿ÉÒÔÍÆ³öÇóF[n]µÄÒ»°ãʽ£¬¼´F[n]=2^n-1;
C++ʵÏÖ£ºÂÔ¡£
ÁíÍâÒ»ÖÖ·½·¨£¬ÊÇʹÓõݹ飬·ÖÎöÉÏÒ»ÖÖ·½·¨µÄµÚÒ»²½£¬Æäʵ½«n-1¸öÅÌ´ÓXÖùÉÏÒÀ¿¿ZÖùÒÆµ½YÖùÉÏ£¬ÕâÓÖÊÇÒ»¸öººÅµËþ£¬Ö»ÊÇÎÊÌâµÄ¹æÄ£Ð¡1£¬Òò´Ë¿ÉÒÔÓÃͬÑùµÄ·½·¨Çó½â¡£Éè²½Êý¼ÆÊýÆ÷int count=0;
Ôò¿ÉÓÃÒÔÏÂËã·¨Ëã³öcount.
C++ʵÏÖ£º
void hanoi(int n,char x,char y,char z)
{
//½«Ëþ×ùXÉϰ´Ö±¾¶´óСÓÉСµ½´óÇÒ×ÔÉ϶øÏ±àºÅΪ1ÖÁnµÄn¸öÔ²Å̰´¹æÔò°áµ½Ëþ×ùZÉÏ£¬Y¿ÉÓÃ×÷¸¨
//Ëþ¡£
if(n==1£© count++;//countΪȫ¾Ö±äÁ¿£¬³õֵΪ0£»
else
{
hanoi(n-1,x,z,y);
count++;
hanoi(n-1,y,x,z);
}
}
ÓÉ´Ë¿ÉÒÔ¼ÆËã³öÖÁÉÙÐèÒªÒÆ¶¯µÄ´ÎÊý¡£
´ýÐø¡¡

