数据结构上机测试4.1:二叉树的遍历与应用1

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

输入二叉树的先序遍历序列和中序遍历序列,输出该二叉树的后序遍历序列。

输入

第一行输入二叉树的先序遍历序列;

第二行输入二叉树的中序遍历序列。

输出

输出该二叉树的后序遍历序列。

示例输入

ABDCEF
BDAECF

示例输出

DBEFCA

思路:本题先找出二叉树的根节点,再重新建立二叉树,然后按要求输出

#include <stdio.h> #include <string.h> #include <stdlib.h> struct node { char data; struct node *left,*right; }; struct node *creat(int n,char *str1,char *str2)//二叉树的重建与后续遍历输出 { struct node *root; int i; if(n==0) return NULL; root=(struct node *)malloc(sizeof(struct node)); root->data=str1[0];//找到根节点,根节点为str1(先序序列)的第一个 for(i=0;i<n;i++)//找到str2(中序序列)的根节点的位置 { if(str2[i]==str1[0]) break; } root->left=creat(i,str1+1,str2);//(左子树的长度,左子树在str1中开始位置的地址,左子树在str2中开始位置的地址) root->right=creat(n-i-1,str1+i+1,str2+i+1);//(右子树的长度,右子树在str1中开始位置的地址,右子树在str2中开始位置的地址) printf("%c",root->data);//后序遍历输出 return root; }; int main() { int n; char str1[1100],str2[1100]; scanf("%s",str1); scanf("%s",str2); n=strlen(str1); creat(n,str1,str2); printf("\n"); return 0; }




转载于:https://www.cnblogs.com/jiangyongy/p/3971663.html

【1291】数据结构上机测试4.1:二叉树的遍历与应用1 SDUTOJ相关推荐

  1. SDUT 1291数据结构上机测试4.1:二叉树的遍历与应用1

    坑爹的百度空间升级之后,成那个熊样了...所以,转战博客园. 题目链接:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem& ...

  2. 【1138】数据结构上机测试2-1:单链表操作A(顺序建表+删除节点)(SDUT)

    数据结构上机测试2-1:单链表操作A Time Limit: 1000ms   Memory limit: 4096K  有疑问?点这里^_^ 题目描述 输入n个整数,先按照数据输入的顺序建立一个带头 ...

  3. 【数据结构与算法基础】二叉树与其遍历序列的互化 附代码实现(C和java)

    前言 数据结构,一门数据处理的艺术,精巧的结构在一个又一个算法下发挥着他们无与伦比的高效和精密之美,在为信息技术打下坚实地基的同时,也令无数开发者和探索者为之着迷. 也因如此,它作为博主大二上学期最重 ...

  4. php之二叉树,PHP数据结构之实现链式二叉树与遍历

    /******************************************************** * 我写的PHP都是从C语言的数据结构中演化而来****************** ...

  5. 数据结构上机测试1:顺序表的应用

    Description 在长度为n(n<1000)的顺序表中可能存在着一些值相同的"多余"数据元素(类型为整型),编写一个程序将"多余"的数据元素从顺序表 ...

  6. 数据结构上机测试2-2:单链表操作B

    题目描述 按照数据输入的相反顺序(逆位序)建立一个单链表,并将单链表中重复的元素删除(值相同的元素只保留最后输入的一个). 输入 第一行输入元素个数n: 第二行输入n个整数. 输出 第一行输出初始链表 ...

  7. 数据结构上机测试2-1:单链表操作A

    题目描述 输入n个整数,先按照数据输入的顺序建立一个带头结点的单链表,再输入一个数据m,将单链表中的值为m的结点全部删除.分别输出建立的初始单链表和完成删除后的单链表. 输入 第一行输入数据个数n: ...

  8. 数据结构期末复习(4.二叉树的遍历)

    准备数据结构的期末考的复习篇 习题内容(红色划线的是做错过的题,要注意) 解析部分(题目的答案用了浅色字体,为了方便自测,看不清可以选中那部分查看) 关联内容[加粗中括号中的内容,包括一些我自己的记忆 ...

  9. 数据结构——二叉树的遍历

    "树"是一种重要的数据结构,本文浅谈二叉树的遍历问题,採用C语言描写叙述. 一.二叉树基础 1)定义:有且仅有一个根结点,除根节点外,每一个结点仅仅有一个父结点,最多含有两个子节点 ...

最新文章

  1. 开学季,教你用Python画大学教室座位神分区图!网友直呼“中枪”
  2. 结构光系统标定方法详解
  3. 《Flex 3程序设计》——Adobe技术专家力作
  4. zabbix服务器性能监控工具的安装二
  5. 使用 做签名的post_java组件HuTool相关工具类的使用(五)
  6. virtualbox+vagrant学习-2(command cli)-20-vagrant suspend命令
  7. SpringMVC支持ant风格的路径
  8. leetcode 617. 合并二叉树 思考分析
  9. 多线程知识梳理(1) - 并发编程的艺术笔记
  10. C语言如何设计随机数
  11. 多小区下小区上行速率的计算(4)
  12. 群晖Nas通过jellyfin搭建本地影音库详细全过程(一):通过群晖系统docker容器安装jellyfin影音库服务器
  13. 如何开发Alexa Intent skill
  14. 【数值优化之线搜索方法】
  15. 企业提供下载链接的安全解决方案
  16. 普通风景照如何调色,ps教程
  17. android 加速度传感器测步数,基于加速度传感器的运动步数检测算法研究
  18. 小米是最能赚外国人钱的国产手机品牌,其他手机品牌只能窝里横
  19. 与老婆大人书之‘欧阳先生’
  20. 阅读笔记——2019_004 A SURVEY OF TECHNIQUES FOR EVENT DETECTION IN TWITTER

热门文章

  1. 前端小白程序员入门之前知道这些,半年后都拿到8K+的offer
  2. D2Admin - 基于vue的清新后台模板
  3. Google Chrome 将禁止“退格键”作为后退按钮使用
  4. Silverlight 4 初学者的10大经典问答
  5. 关于C#传给视图的字符串带有Html转义字符的处理
  6. 低微漏洞处理办法记录
  7. 赛门铁克调研发现越来越多的物联网设备被用于实施DDoS攻击
  8. SecureCRT登录本地cygwin。
  9. 我的最新分词进展和接口设计~
  10. 服装业需要什么样的信息化?