栈:后进先出(last in first outside)
Stack<Integer> s1 = new Stack<>();
s1.empty() //如果栈是空的,返回真
s1.peek() //返回栈的顶部元素
s1.pop() //返回并移除栈的顶部元素
s1.push(x) //增加一个新的元素到栈的顶部
s1.search(x) //返回该栈中指定元素的位置
队列:先进先出(first in first outside)
Queue<Integer> q1 = new LinkedList<>(); // 创建一个队列
q1.off(x) //插入一个元素到队列中
q1.poll() //获取并移除队列的头元素,如果队列为空则返回null
q1.peek() //获取但不移除队列的头元素,如果队列为空则返回null
q1.remove() //获取并移除队列的头元素,如果队列为空则抛出异常
q1.element() //获取但不移除队列的头元素,如果队列为空则抛出异常