摘要: 树(Tree)的基本概念 ◼ 节点、根节点、父节点、子节点、兄弟节点 ◼ 一棵树可以没有任何节点,称为空树 ◼ 一棵树可以只有 1 个节点,也就是只有根节点 ◼ 子树、左子树、右子树 ◼ 节点的度(degree):子树的个数 ◼ 树的度:所有节点度中的最大值 ◼ 叶子节点(leaf):度为 0 的节 阅读全文
posted @ 2020-03-21 20:42 xiuzhublog 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 头尾两端都可以进行添加和删除操作。 接口设计 ◼ int size(); // 元素的数量 ◼ boolean isEmpty(); // 是否为空 ◼ void clear(); // 清空 ◼ void enQueueRear(E element); // 从队尾入队 ◼ E deQueueFr 阅读全文
posted @ 2020-03-21 12:17 xiuzhublog 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 队列也是一种线性表,但是只能在头尾两端进行操作 队头(front):只能从队头移除元素,叫做出队(deQueue) 队尾(rear):只能从队尾添加元素,叫做入队(enQueue) 先进先出 接口设计: 队列的接口设计 ◼ int size(); // 元素的数量 ◼ boolean isEmpty 阅读全文
posted @ 2020-03-21 12:04 xiuzhublog 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 先进后出 接口设计: ◼ int size(); // 元素的数量 ◼ boolean isEmpty(); // 是否为空 ◼ void push(E element); // 入栈 ◼ E pop(); // 出栈 ◼ E top(); // 获取栈顶元素 ◼ void clear(); // 阅读全文
posted @ 2020-03-21 11:52 xiuzhublog 阅读(126) 评论(0) 推荐(0) 编辑
摘要: public class CircleLinkedList<E> extends AbstractList<E> { private Node<E> first; private Node<E> last; private Node<E> current; private static class 阅读全文
posted @ 2020-03-21 11:33 xiuzhublog 阅读(154) 评论(0) 推荐(0) 编辑
摘要: public class SingleCircleLinkedList<E> extends AbstractList<E> { private Node<E> first; private static class Node<E> { E element; Node<E> next; public 阅读全文
posted @ 2020-03-21 11:31 xiuzhublog 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 双向链表相较于单向链表操作性能更好。在进行数据操作的过程中速度更快。 public class LinkedList<E> extends AbstractList<E> { private Node<E> first; private Node<E> last; private static cl 阅读全文
posted @ 2020-03-21 11:26 xiuzhublog 阅读(127) 评论(0) 推荐(0) 编辑