栈和队列
集合链表 栈和队列
栈(Stack):先进后出 方法 push()/add()添加元素,添加至First;pop()弹出元素,弹出栈顶(First)的;Peek()获取栈顶元素;
队列:先进先出,可由两个栈组合达到先进先出效果。(可由linkedList实现类实现)。
Poll()移除并返回队头,如果队列为空返回false;
Remove()移除并返回队头,如果队列为空报错;
集合linkedList(),是双向链表。addFirts()/addLast()添加至第一/最后;removeFirst()/removeLast() 移除第一/最后;getFirst/getLast获得第一/最后; isEmpty()判断是否为空;add()添加元素;
集合ArrayList(),数组为底层的集合。Size()获取集合长度;get(index)获取index处索引的元素。
栈与队列对应功能都可以由linkedList()实现。
链表 单向链表(Node—Node—Node):一个Node中包含存储的数据和对应下一个Node的引用
对于链表插入方法add(T t,int index)中的index是链表中对于元素的坐标(从0开始数),size是链表中的元素个数。注意,0= 链表ListNode创建: class ListNode{
int val;
ListNode next;
ListNode(int x) { val = x; }
}