关闭

用LinkedList实现Stack

标签: java
127人阅读 评论(0) 收藏 举报
分类:

java原始的Stack有着一些缺点,所以可以用LinkedList自己实现一个Stack。

public class Stack<T>{
    private LinkedList<T> storage = new LinkedList<T>();
    //入栈
    public void push(T v){
        storage.addFirst(v);
    }
    //返回栈顶元素的引用但不移除
    public T peek(){
        return storage.getFirst();
    }
    //出栈
    public T pop(){
        return storage.removeFirst();
    }
    //Stack是否为空
    public boolean empty(){
        return storage.isEmpty();
    }
    public String toString(){
        return storage.toString();
    }

}
0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

[疯狂Java]集合:Deque(双端队列)以及两个实现(ArrayDeque、LinkedList)、Stack(摒弃)、各线性表性能分析

1. Deque:     1) 是Queue的子接口,表示双端队列,即两端(队尾和队首)都能插入和删除的特殊队列;     2) 当然,Deque可以使用Queue的全部方法,但是自己也扩展了很多方...
  • Lirx_Tech
  • Lirx_Tech
  • 2016-05-29 09:24
  • 4945

java的list几种实现方式的效率(ArrayList、LinkedList、Vector、Stack),以及 java时间戳的三种获取方式比较

一、list简介List列表类,顺序存储任何对象(顺序不变),可重复。 List是继承于Collection的接口,不能实例化。实例化可以用: ArrayList(实现动态数组),查询快(随意...
  • longshenlmj
  • longshenlmj
  • 2015-06-04 17:39
  • 4141

[笔记]python数据结构之线性表:linkedlist链表,stack栈,queue队列

python数据结构之线性表 python内置了很多高级数据结构,list,dict,tuple,string,set等,在使用的时候十分舒心。但是,如果从一个初学者的角度利用python学习数据结...
  • u013805817
  • u013805817
  • 2015-06-06 17:47
  • 7397

Java用LinkedList实现的Stack

  • 2017-01-04 11:11
  • 1KB
  • 下载

Java Collections Framework之Stack源码分析缺陷,栈改进版(通过LinkedList实现)(基于JDK1.6)

栈是重要的数据结构,从数据结构角度看,栈也是线性表,其特殊性在栈的基本操作是线性表的子集。Stack作为最基本的数据结构,在JDK代码中,也有它的实现,java.util.Stack类是继承了Vect...
  • ajian005
  • ajian005
  • 2014-01-15 21:58
  • 1012

JavaSE第四十三讲:使用LinkedList实现Stack与Queue

复习前面所讲,在ArrayList中的另外两个带参数的构造方法查看JDK Doc文档 ArrayList public ArrayList(int initialCapacity)       ...
  • xukunhui2
  • xukunhui2
  • 2012-12-17 22:55
  • 1035

java语言实现ArrayList,LinkedList,Heap,Stack

java语言实现简单的ArrayList,LinkedList,Heap,Stack,没有考虑线程安全 List接口 package com.coding.basic; public...
  • qq_22221847
  • qq_22221847
  • 2017-03-09 16:58
  • 135

[疯狂Java]集合:Deque(双端队列)以及两个实现(ArrayDeque、LinkedList)、Stack(摒弃)、各线性表性能分析

1. Deque:     1) 是Queue的子接口,表示双端队列,即两端(队尾和队首)都能插入和删除的特殊队列;     2) 当然,Deque可以使用Queue的全部方法,但是自己也扩展了很多方...
  • Lirx_Tech
  • Lirx_Tech
  • 2016-05-29 09:24
  • 4945

学习Stack,并实现从尾到头打印链表LinkedList

栈的定义      栈(Stack)是限制仅在表的一端进行插入和删除运算的线性表。   (1)通常称插入、删除的这一端为栈顶(Top),另一端称为栈底(Bottom)。   (2)当表中没有元素...
  • yuzouzhijie
  • yuzouzhijie
  • 2015-03-28 03:35
  • 383

Stack源码解析及用LinkedList实现Stack

Stack源码分析及用LinkedList实现Stack
  • u012734723
  • u012734723
  • 2017-05-25 20:57
  • 118
    个人资料
    • 访问:3200次
    • 积分:201
    • 等级:
    • 排名:千里之外
    • 原创:16篇
    • 转载:4篇
    • 译文:1篇
    • 评论:0条
    文章分类