zoukankan      html  css  js  c++  java
  • 上节课对数据结构有了基本了解,知道数据结构分为逻辑结构和存储结构。逻辑结构又分为线性结构和非线性结构,这节课要讲的栈就是典型的线性结构。古代有客栈,货栈,马栈。客栈就相当于今天的宾馆,一端开口另一端封闭

     栈闭口的一端叫栈底,开口的一端叫栈顶,无论出栈还是进栈都是在顶部进行

     

     栈在实际使用中是怎么工作的呢?

    每个栈在使用初都先定义一个大小,现在假设一个栈的大小是10,里面存储10个数字,假设10这一端是开口的。现在定义好了开始工作前,栈顶和栈底的指针都是指向栈底1前面的,也就是1前面0。

     现在开始入栈,现在35入栈(从10进来到1这里完毕),然后栈底指针不变指向0,栈顶指针开始指向1了,1现在就是栈顶元素,

    现在68入栈,从10到2这个位置,栈底指针还是不变,栈顶指针指向2,

     现在出栈,先68出栈

     

     可以把10作为栈底,还可以把3作为栈底,因为栈是一种逻辑结构,数组是存储结构,没有人规定必须从0开始存储。

     

     说了这么多,在考试中让计算栈里面有多少元素的时候还要具体问题具体分析。

  • 相关阅读:
    bzoj1878: [SDOI2009]HH的项链
    bzoj1053: [HAOI2007]反素数ant
    bzoj2456: mode
    bzoj2330: [SCOI2011]糖果
    bzoj1050: [HAOI2006]旅行comf
    bzoj1047: [HAOI2007]理想的正方形
    bzoj1968: [Ahoi2005]COMMON 约数研究
    bzoj1046: [HAOI2007]上升序列
    bzoj2440: [中山市选2011]完全平方数
    bzoj1202: [HNOI2005]狡猾的商人
  • 原文地址:https://www.cnblogs.com/djlindex/p/12121481.html
Copyright © 2011-2022 走看看