2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > -9-下旬 数据结构-线性表-队列-java代码实现(复习用)

-9-下旬 数据结构-线性表-队列-java代码实现(复习用)

时间:2018-11-15 09:01:33

相关推荐

-9-下旬 数据结构-线性表-队列-java代码实现(复习用)

话说。。。每次都用现成的类实现,是不是有点偷懒

//队列的本质也是线性表,特性为只在线性表首位端进行操作,为先进先出,和生活中排队的队列是一样的//队列涉及到的操作主要是入队(enQueue)和出队(deQueue)//其中,因为出队是在队尾操作,因此,用动态数组实现队列就会涉及到所有元素的前移,O(n)//所以队列这里选择双向链表实现,得益于headnode和lastnode指针,无论入队出队都是O(1),牺牲空间换时间//实际方法实现也和前面都一样,我就节省时间直接用java自带Linkedlist类实现了//话说java自带的Linkedlist居然就是双向不是单向,双链表的功能覆盖范围比单链表更广,存储上却多了一个指针空间import java.util.LinkedList;import java.util.List;public class QueueZH<E> {private List<E> list = new LinkedList<>();public void enQueue(E element){list.add(0,element);}public E deQueue(){E element = list.remove(list.size()-1);return element;}public void clear(){list.clear();}public E peekHead(){E element = list.get(0);return element;}public E peekTail(){E element = list.get(list.size()-1);return element;}public boolean isEmpty(){return list.isEmpty();}public int size(){return list.size();}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。