Êý¾Ý½á¹¹½Ì°¸
µÚÈýÕ ջºÍ¶ÓÁÐ
Êý¾Ý½á¹¹½Ì°¸ µÚ3Õ ջºÍ¶ÓÁÐ
Ŀ ¼
3.1 Õ»µÄ»ù±¾¸ÅÄî ......................................................................................................................... 2
3.1.1 Õ»µÄ³éÏóÊý¾ÝÀàÐͶ¨Òå .............................................................................................. 2 3.1.2 ˳ÐòÕ» .......................................................................................................................... 2 3.1.3 Á´Õ» .............................................................................................................................. 4 3.2 Õ»µÄÓ¦Óà ................................................................................................................................. 4
3.2.1 ÊýÖÆ×ª»»£º½«Ê®½øÖÆÊýNת»»³ÉÆäËûd½øÖÆÊý ...................................................... 4 3.2.2 À¨ºÅÆ¥ÅäµÄ¼ìÑé .......................................................................................................... 4 3.2.3 ÐÐÊäÈë´¦Àí³ÌÐò .......................................................................................................... 4 3.2.4 ÃÔ¹¬Çó½â ...................................................................................................................... 5 3.2.5 ±í´ïʽÇóÖµ .................................................................................................................. 5 3.3 Õ»ÓëµÝ¹éµÄʵÏÖ ..................................................................................................................... 6 3.4 ¶ÓÁеĻù±¾¸ÅÄî ..................................................................................................................... 6
3.4.1 ¶ÓÁеijéÏóÊý¾ÝÀàÐͶ¨Òå .......................................................................................... 6 3.4.2 Á´¶ÓÁÐ .......................................................................................................................... 7 3.4.3 Ñ»·¶ÓÁÐ ...................................................................................................................... 8 3.5 ¶ÓÁÐÓëÕ»µÄÓ¦Óà ..................................................................................................................... 8
3.5.1 ÀëɢʼþÄ£Äâ .............................................................................................................. 8
1
Êý¾Ý½á¹¹½Ì°¸ µÚ3Õ ջºÍ¶ÓÁÐ
µÚ3Õ ջºÍ¶ÓÁÐ
3.1 Õ»µÄ»ù±¾¸ÅÄî
3.1.1 Õ»µÄ³éÏóÊý¾ÝÀàÐͶ¨Òå 1¡¢Õ»µÄÂß¼ÌØÕ÷
1£© ÏÞ¶¨ÔÚ±íβ½øÐвåÈë»òɾ³ý²Ù×÷µÄÏßÐÔ±í£» 2£© Õ»¶¥¡ª¡ª±íβ¶Ë£»Õ»µ×¡ª¡ª±íÍ·¶Ë 3£© ºó½øÏȳöµÄÏßÐÔ±í
2¡¢³éÏóÊý¾ÝÀàÐ͵͍Òå
ADT Stack{
Êý¾Ý¶ÔÏó£ºD={ai |ai¡ÊElemSet, i=1,2,¡,n, n¡Ý0}
Êý¾Ý¹ØÏµ£ºR={R1},R1={
InitStack( &S )
²Ù×÷½á¹û£º¹¹ÔìÒ»¸ö¿ÕµÄÕ»S DestroyStack( &S )
³õʼÌõ¼þ£ºÕ»SÒÑ´æÔÚ ²Ù×÷½á¹û£ºÏú»ÙÕ»S ClearStack( &S )
³õʼÌõ¼þ£ºÕ»SÒÑ´æÔÚ
²Ù×÷½á¹û£º½«Õ»SÖØÖÃΪ¿ÕÕ» StackEmpty( S )
³õʼÌõ¼þ£ºÕ»SÒÑ´æÔÚ
²Ù×÷½á¹û£ºÈôSΪ¿ÕÕ»£¬Ôò·µ»ØTRUE£¬·ñÔò·µ»ØFALSE StackLength( S )
³õʼÌõ¼þ£ºÕ»SÒÑ´æÔÚ
²Ù×÷½á¹û£º·µ»ØÕ»SÖÐÊý¾ÝÔªËØµÄ¸öÊý GetTop( S, &e )
³õʼÌõ¼þ£ºÕ»SÒÑ´æÔÚÇÒ·Ç¿Õ ²Ù×÷½á¹û£ºÓÃe·µ»ØSÖÐÕ»¶¥ÔªËØ Push( &S, e )
³õʼÌõ¼þ£ºÕ»SÒÑ´æÔÚ
²Ù×÷½á¹û£º²åÈëÔªËØeΪеÄÕ»¶¥ÔªËØ Pop( &S, &e )
³õʼÌõ¼þ£ºÕ»SÒÑ´æÔÚÇÒ·Ç¿Õ
²Ù×÷½á¹û£ºÉ¾³ýSµÄÕ»¶¥ÔªËØ£¬²¢ÓÃe·µ»ØÆäÖµ StackTraverse( S, visit( ) )
³õʼÌõ¼þ£ºÕ»SÒÑ´æÔÚÇÒ·Ç¿Õ
²Ù×÷½á¹û£º´ÓÕ»µ×µ½Õ»¶¥ÒÀ´Î¶ÔSµÄÿ¸öÊý¾ÝÔªËØµ÷Óú¯Êývisit( )¡£Ò»
µ©visit( )ʧ°Ü£¬Ôò²Ù×÷ʧ°Ü
}ADT Stack
˼¿¼£ºÕ»µÄÈ¡ÔªËØ¡¢²åÈ롢ɾ³ý²Ù×÷ÓëÏßÐÔ±íµÄÏàÓ¦²Ù×÷ÓкÎÇø±ð£¬ÎªÊ²Ã´£¿ 3.1.2 ˳ÐòÕ»
2