20,853
次編輯
變更
栈(计算机术语)
,创建页面,内容为“{| class="wikitable" align="right" |- | style="background: #FF2400" align= center| '''<big>栈(计算机术语) </big>''' |- |<center><img src=https://img0.baidu.co…”
{| class="wikitable" align="right"
|-
| style="background: #FF2400" align= center| '''<big>栈(计算机术语) </big>'''
|-
|<center><img src=https://img0.baidu.com/it/u=855651799,2956409784&fm=253&fmt=auto&app=138&f=PNG?w=633&h=500 width="300"></center>
<small>[https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=Stack&step_word=&hs=0&pn=1&spn=0&di=7207123747399008257&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=0&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=undefined&cs=2552150659%2C2695531488&os=1545782526%2C1452714008&simid=2552150659%2C2695531488&adpicid=0&lpn=0&ln=1663&fr=&fmq=1680246856560_R&fm=&ic=undefined&s=undefined&hd=undefined&latest=undefined©right=undefined&se=&sme=&tab=0&width=undefined&height=undefined&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=https%3A%2F%2Fimage.mamicode.com%2Finfo%2F202007%2F20200712005217996063.png&fromurl=ippr_z2C%24qAzdH3FAzdH3F4_z%26e3B4w4tv51j_z%26e3Bv54AzdH3Ftgu5-1jpwts-nama98l_z%26e3Bip4s&gsm=1e&rpstart=0&rpnum=0&islist=&querylist=&nojc=undefined 来自网络的图片]</small>
|-
|-
| align= light|
|}
计算机科学中是一种数据结构
栈(stack)在[[计算]]机科学中是限定仅在表尾进行插入或[[删除]]操作的线性表。栈是一种数据结构,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在[[栈顶]],需要读数据的时候从栈顶开始弹出数据。栈是只能在某一端插入和删除的特殊线性表。
用桶堆积物品,先堆进来的压在底下,随后一件一件往上堆。
取走时,只能从上面一件一件取。读和取都在顶部进行,底部一般是不动的。栈就是一种类似桶堆积物品的数据结构,进行删除和插入的一端称栈顶,另一端称栈底。
插入一般称为进栈,删除则称为退栈。 栈也称为后进先出表。
==基本信息==
中文名;栈
外文名;Stack
性 质;计算机科学中是一种数据[[结构]]
==进栈算法==
①若TOP≥n时,则给出溢出信息,作出错处理(进栈前首先检查栈是否已满,满则溢出;不满则作②);
②置TOP=TOP+1(栈指针加1,指向进栈地址);
③S(TOP)=X,结束(X为新进栈的元素);
==退栈算法==
①若TOP≤0,则给出下溢信息,作出错处理(退栈前先检查是否已为空栈, 空则下溢;不空则作②);
②X=S(TOP),(退栈后的元素赋给X);
③TOP=TOP-1,结束(栈指针减1,指向栈顶)。
栈可以用来在函数调用的时候存储断点,做递归时要用到栈!
==英语==
1.a warehouse; a storehouse
3.a shed; a pen
栈的演示算法
主要算法代码(c++实现):
public void push(int val){
s[++tos]=val;
}
public void pop(){
if(!isEmpty()) tos--;
}
public int top(){
return s[tos];
}
public boolean isEmpty(){
return (tos==-1)? true:false;
}
==适配器==
include<stack.h>头文件,STL中的很有用的[[容器]]适配器之一,默认基于Deque容器实现,可以在定义时覆盖其默认容器类型,但一般并不需要。
包含以下几个成员函数:
empty() 堆栈为空则返回真
pop() 移除栈顶元素(不会返回栈顶元素的值)
push() 在栈顶增加元素
size() 返回栈中元素数目
top() 返回栈顶元素<ref>[https://blog.csdn.net/weixin_45111741/article/details/100636505 栈(计算机术语)], 360国学 ,</ref>
=='''参考文献'''==
|-
| style="background: #FF2400" align= center| '''<big>栈(计算机术语) </big>'''
|-
|<center><img src=https://img0.baidu.com/it/u=855651799,2956409784&fm=253&fmt=auto&app=138&f=PNG?w=633&h=500 width="300"></center>
<small>[https://image.baidu.com/search/detail?ct=503316480&z=0&ipn=d&word=Stack&step_word=&hs=0&pn=1&spn=0&di=7207123747399008257&pi=0&rn=1&tn=baiduimagedetail&is=0%2C0&istype=0&ie=utf-8&oe=utf-8&in=&cl=2&lm=-1&st=undefined&cs=2552150659%2C2695531488&os=1545782526%2C1452714008&simid=2552150659%2C2695531488&adpicid=0&lpn=0&ln=1663&fr=&fmq=1680246856560_R&fm=&ic=undefined&s=undefined&hd=undefined&latest=undefined©right=undefined&se=&sme=&tab=0&width=undefined&height=undefined&face=undefined&ist=&jit=&cg=&bdtype=0&oriquery=&objurl=https%3A%2F%2Fimage.mamicode.com%2Finfo%2F202007%2F20200712005217996063.png&fromurl=ippr_z2C%24qAzdH3FAzdH3F4_z%26e3B4w4tv51j_z%26e3Bv54AzdH3Ftgu5-1jpwts-nama98l_z%26e3Bip4s&gsm=1e&rpstart=0&rpnum=0&islist=&querylist=&nojc=undefined 来自网络的图片]</small>
|-
|-
| align= light|
|}
计算机科学中是一种数据结构
栈(stack)在[[计算]]机科学中是限定仅在表尾进行插入或[[删除]]操作的线性表。栈是一种数据结构,它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在[[栈顶]],需要读数据的时候从栈顶开始弹出数据。栈是只能在某一端插入和删除的特殊线性表。
用桶堆积物品,先堆进来的压在底下,随后一件一件往上堆。
取走时,只能从上面一件一件取。读和取都在顶部进行,底部一般是不动的。栈就是一种类似桶堆积物品的数据结构,进行删除和插入的一端称栈顶,另一端称栈底。
插入一般称为进栈,删除则称为退栈。 栈也称为后进先出表。
==基本信息==
中文名;栈
外文名;Stack
性 质;计算机科学中是一种数据[[结构]]
==进栈算法==
①若TOP≥n时,则给出溢出信息,作出错处理(进栈前首先检查栈是否已满,满则溢出;不满则作②);
②置TOP=TOP+1(栈指针加1,指向进栈地址);
③S(TOP)=X,结束(X为新进栈的元素);
==退栈算法==
①若TOP≤0,则给出下溢信息,作出错处理(退栈前先检查是否已为空栈, 空则下溢;不空则作②);
②X=S(TOP),(退栈后的元素赋给X);
③TOP=TOP-1,结束(栈指针减1,指向栈顶)。
栈可以用来在函数调用的时候存储断点,做递归时要用到栈!
==英语==
1.a warehouse; a storehouse
3.a shed; a pen
栈的演示算法
主要算法代码(c++实现):
public void push(int val){
s[++tos]=val;
}
public void pop(){
if(!isEmpty()) tos--;
}
public int top(){
return s[tos];
}
public boolean isEmpty(){
return (tos==-1)? true:false;
}
==适配器==
include<stack.h>头文件,STL中的很有用的[[容器]]适配器之一,默认基于Deque容器实现,可以在定义时覆盖其默认容器类型,但一般并不需要。
包含以下几个成员函数:
empty() 堆栈为空则返回真
pop() 移除栈顶元素(不会返回栈顶元素的值)
push() 在栈顶增加元素
size() 返回栈中元素数目
top() 返回栈顶元素<ref>[https://blog.csdn.net/weixin_45111741/article/details/100636505 栈(计算机术语)], 360国学 ,</ref>
=='''参考文献'''==