常用数据结构-Stack栈

Stack的本质

Stack(栈)是C#为我们封装好的一个类,

Stack可以存储object任意类型对象,

它的本质是object[]数组,知识封装了特殊的存储规则。

Stack是栈存储容器,是一种先进后出的数据结构,

先存入的数据后获取,后存入的数据先获取,

栈是先进后出

声明

需要引用命名空间using System.Collections;

Stack stack = new Stack();

增取查改

增(压栈):

向栈中添加元素 Push方法

stack.Push();

移除并获取栈顶元素 Pop方法

object v =stack.Pop();

查看栈顶元素 Peek方法

v =stack.Peek();

判断元素是否存在 Contains方法

stack.Contains()

获取元素数量 Count方法

stack.Count

清空容器 Clear方法

stack.Clear

遍历

由于栈无法通过索引获取指定位置元素,因为无法遍历。我们只有通过循环弹栈来获取其中的元素,但是没法遍历访问。

装箱拆箱

由于用万物之父来存储数据,自然存在装箱拆箱。当往其中进行值类型存储时就是在装箱,当将值类型对象取出来转换使用时,就存在拆箱

特点

  • 先进后出

  • 存在装箱拆箱

  • 存储任意类型

  • 无法遍历查看元素

  • 无法获取指定位置元素

  • 只能查看获取栈顶元素

总结

常用方法

  • 压栈:Push

  • 弹栈:Pop

  • 查看栈顶:Peek

  • 查看元素存在:Contains

  • 数量:Count

  • 清空:Clear

注意:

  • 先进后出

  • 装箱拆箱

  • 无法遍历

  • 无法访问指定元素

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值