99常识网

栈桥的拼音(栈)

admin 791

1、基本概念栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线形表。

2、栈是一种数据结构,是只能在某一端插入和删除的特殊线性表。

3、它按照先进后出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数据的时候从栈顶开始弹出数据(最后一个数据被第一个读出来)。

4、栈是允许在同一端进行插入和删除操作的特殊线性表。

5、允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动;栈中元素个数为零时称为空栈。

6、插入一般称为进栈(PUSH),删除则称为退栈(POP)。

栈桥的拼音(栈)

7、栈也称为后进先出表(LIFO表)。

8、栈可以用来在函数调用的时候存储断点,做递归时要用到栈!栈的模型基本算法进栈(PUSH)算法①若TOP≥n时,则给出溢出信息,作出错处理(进栈前首先检查栈是否已满,满则溢出;不满则作②);②置TOP=TOP+1(栈指针加1,指向进栈地址);③S(TOP)=X,结束(X为新进栈的元素);退栈(POP)算法①若TOP≤0,则给出下溢信息,作出错处理(退栈前先检查是否已为空栈,空则下溢;不空则作②);②X=S(TOP),(退栈后的元素赋给X);③TOP=TOP-1,结束(栈指针减1,指向栈顶)。

9、栈的实现在pascal下的实现数组型Constm=栈表目数的上限;Typestack=array[.m]ofstype;{栈类型}Vars:stack;{栈}top:integer;{栈顶指针}记录型constm=栈表目数的上限;typestack=recordelem:array[.m]ofelemtp;top:0..m;{栈顶指针}end;Vars:stack;{栈}在C/C++中栈的一些基本操作:C代码:#include<iostream>#defineMaxSize100usingnamespacestd;typedefstruct{intdata[MaxSize];inttop;}SqStack;voidInitStack(SqStack*st)//初始化栈{st->top=-1;}intStackEmpty(SqStack*st)//判断栈为空{return(st->top==-1);}voidPush(SqStack*st,intx)//元素进栈{if(st->top==MaxSize-1)printf("栈上溢出!");else{st->top++;st->data[st->top]=x;}}voidPop(SqStack*st)//退栈{if(st->top==-1)printf("栈下溢出");elsest->top--;}intGettop(SqStack*st)//获得栈顶元素{if(st->top==-1){printf("栈空");return0;}elsereturnst->data[st->top];}voidDisplay(SqStack*st)//打印栈里元素{inti;printf("栈中元素:");for(i=st->top;i>=0;--i)printf("%d",st->data[i]);printf("");}intmain(){SqStackL;SqStack*st=&L;InitStack(st);printf("栈空:%d",StackEmpty(st));for(inti=1;i<10;++i)Push(st,i);Display(st);printf("退一次栈");Pop(st);printf("栈顶元素:%d",Gettop(st));Pop(st);Display(st);return0;}。

以上就是【栈桥的拼音,栈】相关内容。