简述数据结构栈
栈是一种线性表,其限制只能在表尾进行插入或删除操作。由于该特性又称为后进先出的线性表。
简述数据结构队列
队列是一种先进先出的线性表。其限制只能在线性表的一端进行插入,而在另一端删除元素。
简述二叉树
二叉树是n个有限元素的集合,该集合或者为空、或者由一个称为根(root)的元素及两个不相交的、被分别称为左子树和右子树的二叉树组成。
简述满二叉树
一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是满二叉树。
简述完全二叉树
一棵深度为k的有n个结点的二叉树,对树中的结点按从上至下、从左到右的顺序进行编号,如果编号为i(1≤i≤n)的结点与满二叉树中编号为i的结点在二叉树中的位置相同,则这棵二叉树称为完全二叉树。
简述二叉树的前中后序遍历算法
前序遍历:若二叉树为空树,则执行空逻辑,否则:
-
访问根节点
-
递归前序遍历左子树
-
递归前序遍历右子树
中序遍历:若二叉树为空树,则执行空逻辑,否则:
-
递归中序遍历左子树
-
访问根节点
-
递归中序遍历右子树
后序遍历:若二叉树为空树,