Java LinkedList特有方法程序小解 && 使用LinkedList 模拟一个堆栈或者队列数据结构。
package Collection; import java.util.LinkedList; /*
LinkedList:特有的方法
addFirst()/addLast();
getFirst()/getLast();
removeFirst()/removeLast(); 若链表为空,抛出 没有这个元素异常/NoSuchElementException
但是 JDK1.6 版本以后出现了替代方法:
offerFirst()/offerLast();
peekFirst()/peekLast()
pollFirst()/pollLast():若链表为空,则返回null */ public class LinkListDemo
{
public static void main(String[] args)
{
LinkedList<String> link = new LinkedList<String>(); link.addFirst("Java01");
link.addFirst("Java02");
link.addFirst("Java03");
link.addFirst("Java04"); sop(link);
// [Java04, Java03, Java02, Java01]
/*
get 方法只取元素
remove 方法取完元素,还删除
*/ /*
sop(link.getFirst());
sop(link.getLast());
sop(link.removeFirst());
sop(link.removeLast()); sop("size: "+link.size());
*/ while (!link.isEmpty())
{
sop(link.removeFirst());
}
} public static void sop(Object obj)
{
System.err.println(obj);
}
} ////////////////////////////////////////////////////////
////////////////////////////////////////////////////////
package Collection; import java.util.LinkedList; /*
使用LinkedList 模拟一个堆栈或者队列数据结构。 堆栈:先进后出
队列:先进先出 */ class DuiLie
{
private LinkedList link;
DuiLie()
{
link = new LinkedList();
} public void myAdd(Object obj)
{
link.addFirst(obj);
}
public Object myGet()
{
return link.removeLast();
} public boolean isNull()
{
return link.isEmpty();
} } public class LinkListTest
{
public static void main(String[] args)
{
DuiLie dl = new DuiLie();
dl.myAdd("Java01");
dl.myAdd("Java02");
dl.myAdd("Java03");
dl.myAdd("Java04"); // System.out.println(dl.myGet()); System.out.println("============"); while (!dl.isNull())
{
System.out.println(dl.myGet());
}
}
}
Java LinkedList特有方法程序小解 && 使用LinkedList 模拟一个堆栈或者队列数据结构。的更多相关文章
- java 使用LinkedList模拟一个堆栈或者队列数据结构
近期在复习下java基础,看了下java基础,在看到集合时突然发现想起来曾经面试有一道笔试题:模拟一个堆栈或者队列数据结构,当时还没做出来,今天就写一下,首先得明确堆栈和队列的数据结构 堆栈:先进后出 ...
- 使用LinkedList模拟一个堆栈或者队列数据结构
使用LinkedList模拟一个堆栈或者队列数据结构. 堆栈:先进后出 如同一个杯子. 队列:先进先出 如同一个水管. import java.util.LinkedList; public cl ...
- 面试题:使用LinkedList来模拟一个堆栈或者队列数据结构
请使用LinkedList来模拟一个堆栈或者队列数据结构. 堆栈:先进后出 First In Last Out (FILO) 队列:先进先出 First In First Out (FIFO) 我 ...
- java集合 collection-list-LinkedList 模拟一个堆栈或者队列数据结构。
/* 使用LinkedList模拟一个堆栈或者队列数据结构. 堆栈:先进后出 如同一个杯子. 队列:先进先出 First in First out FIFO 如同一个水管. */ import jav ...
- 使用LinkedList模拟一个堆栈或者队列数据结构。
堆栈:先进后出 First in last out filo 队列:先进先出 First in last out filo使用LinkedList的方法,addFirst addLast getFir ...
- 25、LinkedList特有方法
LinkedList特有方法 public void addFirst(E e)及addLast(E e) public E getFirst()及getLast() public E removeF ...
- Java List集合特有方法程序用法
package Collection; /* Collection |--List:元素是有序的,元素可以重复.因为该集合体系有索引 | |--ArrayList:底层的数据结构使用的是数组结构 特点 ...
- java通过LinkedList实现堆栈和队列数据结构
package shb.java.demo3; import java.util.LinkedList; public class TestLinkedList { /** * @author sha ...
- [数据结构] 用C语言模拟一个简单的队列程序
#include<stdio.h> #include <stdlib.h> #include<string.h> #include<math.h> // ...
随机推荐
- LoadLibrary失败的原因(转)
背影: 今天终于把公司的SDK 动态链接库转为Java 可调用的JNI 格式.DLL的编译环境是VS2010,使用Debug 输出时调用正常,而用Release 输出却调用失败.这可把哥搞惨了,开始以 ...
- PHPCMS快速建站系列之自定义分页函数
内容分页的实现方法:{pc:content action="lists" catid="$catid" order="id DESC" nu ...
- UVa 900 - Brick Wall Patterns
题目大意:用1*2的砖头建n*2的墙,问有多少种不同的砖头排列方式?与斐波那契序列相似. #include <cstdio> #define MAXN 60 #define N 50 un ...
- 【Xilinx-Petalinux学习】-00-开始
基于自己的ZYNQ板子,在上面运行petalinux,已经搞得稳定了,之后详细记录. 现在功能:QSPI启动u-boot和kernel,vdma.tpg.osd.vtc等IP模块在Linux下的驱动, ...
- Eclipse配置Git发布项目到Github
很牛叉的博客http://blog.csdn.net/luckarecs/article/details/7427605 一.安装插件 菜单栏Help --> Install New Softw ...
- bzoj2555
开始时间:19:40 完成时间:21:00 传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=2555 题目大意:(1):在当前字符串的后面插入一 ...
- 大数据全栈式开发语言 – Python
前段时间,ThoughtWorks在深圳举办一次社区活动上,有一个演讲主题叫做“Fullstack JavaScript”,是关于用JavaScript进行前端.服务器端,甚至数据库(MongoDB) ...
- YII 1.0 隐藏单入口index.php 设置路由与伪静态
隐藏 index.php 保证apache配置文件httpd.conf里的LoadModulerewrite_module modules/mod_rewrite.so开启(去掉#)将相对应目录的Al ...
- C#中如何使用IComparable<T>与IComparer<T>接口(转载)
本分步指南描述如何使用两个接口: IComparer和IComparable.在同一篇文章中讨论这些接口有两个原因.经常在一起,使用这些接口和接口类似 (并且有相似的名称),尽管它们用于不同用途. 如 ...
- 如何快速定位到Eclipse自动添加的TODO
把自动生成的// TODO ....前面加上todo,这样生成之后就会有编译错误,直接 ctrl+. 就到该位置了,可以删除todo留着// TODO ...,也可以ctrl+d删除一行: 不建议不生 ...