<H2>栈的定义</H2>
< ><B> 栈</B>是一种特殊的<a href="http://algorithm.myrice.com/datastructure/basic/list/chapter1.htm" target="_blank" >表</A>,这种表只在表头进行插入和删除操作。因此,表头对于栈来说具有特殊的意义,称为<B>栈顶</B>。相应地,表尾称为<B>栈底</B>。不含任何元素的栈称为空栈。</P>
< > </P>
<H2>栈的数学性质</H2>
< >假设一个栈S中的元素为a<SUB>n</SUB>,a<SUB>n-1</SUB>,..,a<SUB>1</SUB>,则称a<SUB>1</SUB>为栈底元素,a<SUB>n</SUB>为栈顶元 素。栈中的元素按a<SUB> </SUB>,a<SUB>2</SUB>,..,a<SUB>n-1</SUB>,a<SUB>n</SUB>的次序进栈。在任何时候,出栈的元素都是栈顶元素。换句话说,栈的修改是按后进先出的原则进行的,如图1所示。因此,栈又称为<B>后进先出(Last In First Out)表</B>,简称为<B>LIFO表</B>。所以,只要问题满足<B>LIFO</B>原则,就可以使用栈。</P>
<BLOCKQUOTE>
<P align=center><IMG src="http://algorithm.myrice.com/datastructure/basic/stack/images/img1.gif"></P>
<P align=center>图1 栈的后进先出示意图</P></BLOCKQUOTE><!-- #EndEditable --> |