试题详情
- 简答题一棵具有n个结点的二叉树采用顺序存储结构,编写算法对该二叉树进行前序遍历。
- 按照题目要求,设置一个工作栈以完成对该树的非递归算法,思路如下:
①每访问一个结点,将此结点压栈,查看此结点是否有左子树,若有,访问左子树,重复执行该过程直到左子树为空。
②从栈弹出一个结点,如果此结点有右子树,访问右子树执行步骤①,否则重复执行步骤②。具体算法如下:
关注下方微信公众号,在线模考后查看
热门试题
- 下列存储形式中,()不是树的存储形式。
- 带头结点的双向循环链表L为空表的条件是(
- 编写算法-统计出单链表HL中结点的值等于
- 堆是一种有用的数据结构。下列关键码序列(
- 设顺序表va中的数据元素递增有序。试写一
- 散列表的查找效率主要取决于散列表造表时选
- 在一个双向链表中,通过一个结点的p110
- 描述以下三个概念的区别:头指针,头结点,
- 算法的特性包括(),输入和输出。
- 若输入序列为1,2,3,4,5,6,则通
- 在非递归调用的情况下,数据区的分配方法采
- 设有一个顺序栈S,元素s1,s2,s3,
- 递归调用算法与相同功能的非递归算法相比,
- 一个高度为h的满二叉树共有n个结点,其中
- 对于一个长度为n的单链接存储的线性表,在
- 有向图如下图所示,画出邻接矩阵和邻接表。
- 数据结构被形式地定义为(D,R),其中D
- 广义表((b,a,c),c,d,f,e,
- 线性表的两种存储结构各有哪些优缺点?
- 在哈夫曼编码中,当两个字符出现的频率相同