当前位置: 首页 > news >正文

英文网站建站模板建设银行天津招聘网站

英文网站建站模板,建设银行天津招聘网站,浙江华纳建设有限公司网站,小程序入口文件描述 编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树…

描述

编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。 例如如下的先序遍历字符串: ABC##DE#G##F### 其中“#”表示的是空格,空格字符代表空树。建立起此二叉树以后,再对二叉树进行中序遍历,输出遍历结果。

输入描述:

输入包括1行字符串,长度不超过100。

输出描述:

可能有多组测试数据,对于每组数据, 输出将输入字符串建立二叉树后中序遍历的序列,每

个字符后面都有一个空格。 每个输出结果占一行。

输入:abc##de#g##f###  输出:c b e g d f a

这一题很多人其实连题目都没有读懂到底是什么意思?它是要我们表达什么,或者是要我们干什么。其实它就是说给我们一组字符串,然后要我们把这个字符串先构建成一个二叉树,然后在把这个二叉数用中序遍历来输出结果就可以了。

我们一步一步的来解决这个问题

一.初始化

我们先要有个大局观,先把主函数写了,先把一个主要的思路完成,这个题目我们的思路就是

int main() {char str[100];//创建字符数组scanf("%s",str);int i=0;TNode*root=CreateTree(str,&i);将字符数据变成二叉树Inorder(root);中序遍历return 0;
}

当然我们还需要先初始化一个二叉树

typedef struct TreeNode
{struct TreeNode* left;struct TreeNode* right;char val;
}TNode;

二.创建二叉树

TNode*CreateTree(char*a,int*pi);

首先先把char*a,int*pi传过去,一个是数组名,一个是下标

然后就是第一个判断,如果在字符中出现了#,说明是空,所以我们要下标++,直接返回NULL,这个也为后面的递归做了条件

if(a[*pi]=='#'){(*pi)++;return NULL;}

首先我们要为根节点开辟空间,如果是空,就要报错,如果不是空,我们就把数组的数据存放到这个根节点里面,然后要它向后走,进入递归,先左在右,进入左了之后,原左孩子变成了根节点,就继续走。知道把字符数据都遍历到二叉树中去

TNode*root=( TNode*)malloc(sizeof(TNode));if(root==NULL){printf("mallco fail\n");exit(-1);}root->val=a[*pi];(*pi)++;root->left=CreateTree(a,pi);root->right=CreateTree(a,pi);

整体

TNode*CreateTree(char*a,int*pi)
{if(a[*pi]=='#'){(*pi)++;return NULL;}TNode*root=( TNode*)malloc(sizeof(TNode));if(root==NULL){printf("mallco fail\n");exit(-1);}root->val=a[*pi];(*pi)++;root->left=CreateTree(a,pi);root->right=CreateTree(a,pi);return root;
}

三.中序遍历

void Inorder(TNode*root)
{if(root==NULL)return;Inorder(root->left);printf("%c ",root->val);Inorder(root->right);}

总结

然后就结束了

我认为这个题目难就难在创建二叉树,和题目的意思,只有意思理解了就好做了

http://www.yayakq.cn/news/987801/

相关文章:

  • 深圳网站公司招聘信息wordpress cms主题制作
  • 网站排名优化建设jsp网站首页那栏怎么做
  • 湖南网站设计案例云服务器怎么用
  • 建设网站哪家公司好新站秒收录接口
  • 设计一个商务网站做墙报的网站
  • 网站开发框架 c图片网站源码asp
  • 用iis为公司做一个内部网站如何用手机创造游戏软件
  • 3建网站婚车网站模版
  • 帝国cms 网站描述的全局变量美食网页设计模板中文
  • 关于织金县网站建设的论文急切网在线制作
  • 南通网站建设推广专家wordpress获取文章id方法
  • 北京建网站的价格企业网站建设费如何列支
  • 织梦装修设计网站模板接单做网站怎么开价格
  • 青岛哪家做网站好班级网站建设的内容
  • 网站建设方案书原件博客 建立网站
  • 怎么自己做卡盟网站建网站北京
  • 聊城做网站的网络公司成全视频在线直播观看
  • 阿里云网站注册wordpress 自定义函数
  • 张北北京网站建设顺昌网站建设
  • 做网站用什么域名比较好郑志平爱站网创始人
  • 外贸网站运营工作内容商城版网站制作
  • 上海免费网站建设服务wordpress 个人简洁
  • 网站用户界面设计东阳网站建设yw126
  • 网站建设OA系统开发建设用地规划证查询网站
  • 怎么做网站跳转链接网站建设网站制作有限
  • flash网站建设个人简介分销商城开发
  • 做网站的公司前三名手机端网站模板下载
  • 做仿制网站网页ui设计模板代码
  • 天津建设网站首页网站建设项目评审意见
  • 网站 做 app房屋室内装修设计