码迷,mamicode.com
首页 > 其他好文 > 详细

第04次作业-树

时间:2018-05-05 19:39:05      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:分享   中缀表达式   实验   ··   源代码   后序遍历   优先   优先级   字符型   

第04次作业-树

1.学习总结
1.1树结构思维导图
技术分享图片

1.2 树结构学习体会

2.PTA实验作业
本周要求挑选出3道题目书写设计思路、调试过程。设计思路使用伪代码描述。题目选做要求:
?如果选6-1,只需要描述建树的伪代码。
?6-4必选

2.1 题目1:6-1
2.2 设计思路(伪代码或流程图)
void CreateBTree(BTree &BT,string str)//根据层次字符序列创建二叉树
{
If(str不为空)
{
Str【i】为根;
CreateBTree(BT, str【2i+1】);
CreateBTree(BT, str【2i+2】);
}
}

void PreOrder( BTree BT );//先序遍历二叉树
{
If(BT不为空)
{
If(BT不是‘#’)
输出根;
PreOrder(根的左孩子);
PreOrder(根的右孩子);
}
}

void InOrder( BTree BT );//中序遍历二叉树
{
If(BT不为空)
{
InOrder(根的左孩子);
If(BT不是‘#’)
输出根;
InOrder(根的右孩子);
}
}

void PostOrder(BTree BT);//后序遍历二叉树
{
If(BT不为空)
{
PostOrder(根的左孩子);
PostOrder(根的右孩子);
If(BT不是‘#’)
输出根;
}
}

2.1 题目2:6-4
2.2 设计思路(伪代码或流程图)
void InitExpTree(BTree &T,string str) //建表达式的二叉树
建 运算符op1栈op.Push(‘#’);
建 操作符op2 栈ch.Push(‘#’);
初始化二叉树根节点;
While(表达式未结束)
{
If(中缀表达式ch==运算符)
{
与op2栈栈顶比较优先级
If(栈顶>=ch)
初始化一个根节点, pop(op1),pop(op1)不为‘#’,将ch作为根节点,两个数为为左右子树,再push(op1);
若第二次pop(op1)为‘#’不出栈,并将表达式接着往下移;
Else
进入op2栈;
}
If(中缀表达式ch==操作符)
{
Push(op2);
}
表达式向下移一位;
}

double EvaluateExTree(BTree T) //计算表达式树
{
Op=根;
定义a=根的左子树;
定义b=根的右子树;
If(a,b都为操作符)
则计算c=a op b的值;
返回值c;
}

2.3 代码截图(注意,截图、截图、截图。代码不要粘贴博客上。不用用···语法去渲染)
技术分享图片
技术分享图片
技术分享图片
2.4 PTA提交列表说明。

技术分享图片

不会改。
2.1 题目3:7-2
2.2 设计思路(伪代码或流程图)
设计一个建造二叉树的函数和一个先序遍历函数
BTNode CreateBT2(int post,int in ,int n)//构造二叉树
{
//post存放后序序列,in存放中序序列
If(n<=0)
Return 0;
Else
{
定义r=根;
找到中序序列中根所在下标为k;
根的左孩子=CreateBT2(post, in , k);
根的右孩子=CreateBT2(post+k, p+1 , n-k-1)
}
void PreOrder(BTNode
b)//先序遍历二叉树
{
If(树不为空)
{
输出根;
先序遍历根的左孩子,先序遍历右孩子;
}
}
}

2.3 代码截图(注意,截图、截图、截图。代码不要粘贴博客上。不用用···语法去渲染)
技术分享图片
技术分享图片

2.4 PTA提交列表说明。
技术分享图片
技术分享图片

代码运行时只可以打出n和第一串数字;
原因是在源代码中将数字串全都定义成字符型,后来将其改为整型数值;
且原代码中main中输入时忘记输入整数n;
3.截图本周题目集的PTA最后排名
技术分享图片

本次题目集总分:285分
必做题共:230分
总分=155
3.1 PTA排名截图
技术分享图片

3.2 我的总分:155

  1. 阅读代码(必做)
    本次为必做
    ?找1篇和树结构有关的代码,说明该代码功能是什么,优点是什么?
    ?给出代码相关地址。
    5.代码Git提交记录截图
    技术分享图片
    技术分享图片

第04次作业-树

标签:分享   中缀表达式   实验   ··   源代码   后序遍历   优先   优先级   字符型   

原文地址:https://www.cnblogs.com/alleln/p/8995633.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!