java实现链栈

本文介绍了如何使用Java通过链表实现栈数据结构。详细讲解了如何定义链表节点数据类型和链表操作类,包括栈顶定义、栈的判断、元素的添加与删除、栈的长度、最大容量等关键操作,并提供了完整源码。
摘要由CSDN通过智能技术生成


前言

栈是一种先进先出的数据结构,FIFO,栈的这种特性在日常生活中被普遍使用。例如在浏览器上返回前一个网页和后一个网页就利用的栈


提示:以下是本篇文章正文内容,下面案例可供参考

一、链表实现栈

1、两个类,一个用来定义链表节点数据类型,一个实现链表的操作

1.1、数据类型

1.1.1、定义节点数据类型包涵那些基本数据类型
    public int num;
    public LinkedStackNode next;
1.1.2、节点构造函数
    public LinkedStackNode(int num) {
   
        this.num = num;
    }
1.1.3、重写toString()

idea可以快捷生成

    @Override
    public String toString() {
   
        return "LinkedStackNode{" +
                "num=" + num +
                '}';
    }
1.1.4、完整源码
class LinkedStackNode{
   
    public int num;
    public LinkedStackNode next;

    public LinkedStackNode(int num) {
   
        this.num = num;
    }

    @Override
    public String toString() {
   
        return "LinkedStackNode{" +
                "num=" + num +
                '}';
    }
}

1.2、链表操作类

1.2.1、定义栈顶
	//成员变量
    public LinkedStackNode lsn;

    //构造栈,1,定义栈顶
    public LinkedStack() {
   
        this.lsn = null;
    }
1.2.2、isEmpty(),判断是否栈空
   //2,isEmpty(),判断是否栈空
    public boolean isEmpty(){
   return this.lsn == null;}
1.2.3、push(int a),添加元素
    //3,isFull(),判断是否栈满
    public boolean 
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值