博客作业04--树

1.学习总结(2分)

1.1树结构思维导图


1.2 树结构学习体会

数结构是非线性结构,与线性结构不同的是,线性结构可以表示元素之间的一对一关系,但是在数型结构中,一个节点与多个节点相对应,总的来说他们的关系是一对多。学习树的结构这块觉得很难,因为它的内容很多,涉及了很多递归的知识,虽然递归的代码量很少,但是有很多递归的代码很难理解。

2.PTA实验作业(4分)

2.1 题目1:6-2 求二叉树高度(20 分)

2.2 设计思路(伪代码或流程图)

int GetHeight( BinTree BT )

	lchildh记录左节点数,rchildh记录右节点数
	如果BT==NULL,返回0作为递归出口
	 否则
		lchildh=GetHeight(BT->Left)
                遍历左节点
		rchildh=GetHeight(BT->Right)
                遍历右节点
		如果lchildh>rchildh
                        返回最长路径的长度为lchildh+1
                 否则返回rchildh+1

2.3 代码截图

2.4 PTA提交列表说明。


这个递归刚开始不太理解,是看书本上的写的,后来查了一下才知道是在遍历完树之后,递归逐步的执行上面的后面步骤返回lchild+1(rchild+1),每次往上返回的结果就是最大得深度值了。

2.1 题目2:6-3 先序输出叶结点(15 分)

2.2 设计思路(伪代码或流程图)

void PreorderPrintLeaves( BinTree BT )
如果BT!=NULL

         当BT节点是叶子节点时
          即BT->Left==NULL&&BT->Right==NULL
	       输出该节点所对应的元素
	  遍历左子树
	  遍历右子树

2.3 代码截图

2.4 PTA提交列表说明。


第一次提交忘了加空格,导致格式错误。其他没遇到问题。

2.1 题目3:6-4 jmu-ds-表达式树(25 分)

2.2 设计思路(伪代码或流程图)

2.3 代码截图



2.4 PTA提交列表说明。


分母为零的时候的语句写错了,还有碰到括号的操作不会写。

3.截图本周题目集的PTA最后排名(3分)

3.1 PTA排名

3.2 我的得分:1.5

4. 阅读代码(必做,1分)




这个代码是给定一棵二叉树的先序遍历序列和中序遍历序列,计算该二叉树的高度。这个代码虽然很长,可是写得很细心,比较容易理解。

5. 代码Git提交记录截图

posted @ 2018-05-05 19:58  梁才玉  阅读(258)  评论(3编辑  收藏  举报