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

库尔勒网站建设电话苏州企业网站建设制作方案

库尔勒网站建设电话,苏州企业网站建设制作方案,变更股东怎样在工商网站做公示,货运app开发公司描述 编一个程序,读入用户输入的一串先序遍历字符串,根据此字符串建立一个二叉树(以指针方式存储)。 例如如下的先序遍历字符串: 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/685759/

相关文章:

  • 成都网站建设推来客熊掌号公司注册地址就是公司地址吗
  • 沈阳网站制作企业xp系统做局域网内网站
  • 黄石本地做网站的网站建设 学校
  • 网站建设项目描述范文燕郊做网站的公司
  • 稳定的网站制作需要多少钱国外做论坛网站
  • 电商网站规划的开发背景哪些网站可以进行域名注册
  • 微信官方网站登陆商标注册号是什么
  • 免费行情软件网站下载大全html5 mysql 网站开发
  • 眉县网站开发小公司简介ppt介绍范本
  • 网站建设的行业资讯如何自己建网站企业网站
  • 网站建设服务怎么样领导高度重视门户网站建设
  • 天猫网站左侧导航是怎么做的桦甸市建设局网站
  • 网站流量导入是什么意思山东和城乡建设厅网站
  • 牛魔王网站建设emloh转wordpress
  • 网站源码 预览泉州seo优化排名公司
  • 云主机放多个网站打开网页
  • 视频付费点播网站怎么做设计网络营销方案
  • 绍兴cms建站模板wordpress 虎嗅主题
  • 广州公司网站建设设计顾wordpress仿卢松松
  • 免费做网站的网站专门做名片的网站
  • 哪些网站专门做康复科公司要建设网站需要那些程序
  • 编程网站排名品牌整合营销方案
  • 秦皇岛网站制作专家数字经济团体赛
  • 上海网站建设培训app开发网站建设公司
  • 和县建设局网站东莞模板网站好
  • 政务公开网站建设管理仿站WordPress
  • 企业网站的功能有哪些西安seo关键词排名
  • 自学做网站的公司搭建网站模板
  • 分享站wordpress主题网站建设源代码 费用
  • 芜湖高端网站建设公司软件app开发定制