数据结构-堆和栈-创新互联
什么是堆-先进先出
新闻名称:数据结构-堆和栈-创新互联
链接分享:http://ybzwz.com/article/dijcgg.html
堆 heap :由new分配的内存块,其释放由程序员控制
类似于排队
什么是栈-先进后出栈 stack :是那些编译器在需要时分配,在不需要时自动清除的存储区。
栈仅在表尾进行插入和删除,进行删除和插入的一端被称为栈顶,相对地,把另一端称为栈底。
向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;
从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
类似于一个封闭的胡同依次进入很多车子,先进去的车子,到最后面才能出胡同,最后进去的车子,先出胡同
栈的基本操作新建一个栈stack
p.empty() 栈是否为空,栈空,就返回TRUE,不为空,返回FALSE
p.size() 返回栈的长度
p.push() 将元素插进栈顶
p.pop() 将栈顶元素输出
p.top() 查看栈顶元素
牛客AB1 【模板】栈堆和栈的区别#include
#include using namespace std; int main() { int n; cin >>n; int num[n]; int nn=0; for (int i = 0; i< n; i++) { string str; cin >>str; if(str=="push"){ int t; cin>>t; nn=nn+1; num[nn]=t; } if(str=="pop"){ if(nn<=0) cout<<"error"<
- 堆栈空间分配不同。栈由操作系统自动分配释放 ,存放函数的参数值,局部变量的值等;堆一般由程序员分配释放。
- 堆栈缓存方式不同。栈使用的是一级缓存, 它们通常都是被调用时处于存储空间中,调用完毕立即释放;堆则是存放在二级缓存中,速度要慢些。
- 堆栈数据结构不同。堆类似数组结构;栈类似栈结构,先进后出。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
新闻名称:数据结构-堆和栈-创新互联
链接分享:http://ybzwz.com/article/dijcgg.html