前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >栈结构

栈结构

作者头像
星哥玩云
发布2022-09-14 20:23:05
2980
发布2022-09-14 20:23:05
举报
文章被收录于专栏:开源部署

1、概述

栈是一种==“先进后出”==的一种数据结构,有压栈出栈两种操作方式。

可以把栈这种数据结构理解成是手枪的弹夹。

压栈就好比是往弹夹中压子弹。

弹栈就好比是往子弹中退出子弹。

image20200120145426367.png
image20200120145426367.png

2、栈数据结构的代码体现

用LinkedList模拟栈的数据结构

代码语言:javascript
复制
public class MyStack {
	private LinkedList link;

	public MyStack() {
		link = new LinkedList();
	}
    
	//压栈
    //每次压倒栈顶
	public void add(Object obj) {
		link.addFirst(obj);
	}
	
    //弹栈
    //每次从栈顶取出
	public Object get() {
		// return link.getFirst();
		return link.removeFirst();
	}

	public boolean isEmpty() {
		return link.isEmpty();
	}
}
代码语言:javascript
复制
	public static void main(String[] args) {
		// 创建集合对象
		MyStack ms = new MyStack();

		// 添加元素
		ms.add("hello");
		ms.add("world");
		ms.add("java");
		
		while(!ms.isEmpty()){
			System.out.println(ms.get());
		}
        //结果
        //java
        //world
        //java
	}

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、概述
  • 2、栈数据结构的代码体现
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档