栈与队列

学习方法讨论
不要完美主义。掌握好“度”。不用非要透彻理解才进行下一阶段学习
学习本着自己的目标去。
对于这个课程,大家的首要目标,是了解各个数据结构的底层实现原理

栈 Stack

LIFO (last in first out) 后进先出 的结构

Stack<E>
	void push(E)
	E pop()
	E peek()
	int getSize()
	boolean isEmpty()

队列 Queue

队列也是一种线性结构 FIFO(First in First Out)

相比数组,队列对应的操作是数组的子集

只能从一端(队尾)添加元素,只能从另一端(队首)取出元素

Queue<E>
	void enqueue(E)
	E dequeue()、
	E getFront()
	int getsize()
	boolean isEmpty()

数组队列

循环队列

front == tail 队列为空

(tail + 1) % c == front 队列满

index 指向了队尾 : (index + 1) % data.length = tail

posted @ 2020-03-06 17:05  gaoyang666  阅读(85)  评论(0编辑  收藏  举报