7-1 层序遍历二叉链表
设计程序,按先序创建二叉树的二叉链表;然后层序遍历二叉树。
输入格式:
按先序输入一棵二叉树。二叉树中每个结点的键值用字符表示,字符之间不含空格。注意空树信息也要提供,以#字符表示空树。
输出格式:
输出层序遍历二叉树的序列。序列中不含空格、不含#。
输入样例:
abc##d##e#f##
输出样例:
abecdf
代码示例如下:
#include<bits/stdc++.h>
#define lc tr[i].l
#define rc tr[i].r
#define tc tr[i].ch
using namespace std;
const int N = 1e6+100;
struct node{char ch;int l,r;
}tr[N];
int tot;
void build(int i){tc = getchar();if(tc=='#') return;build(lc=++tot);build(rc=++tot);
}
int main()
{build(++tot);queue<int> q;q.push(1);while(q.size()){int i=q.front();q.pop();if(tc=='#') continue;putchar(tc);q.push(lc); q.push(rc);}return 0;}
7-1 层序遍历二叉链表相关推荐
- C++非递归算法遍历二叉链表
递归的二叉链表遍历基于类自身函数的自我调用,而二叉链表的非递归操作,基于栈的入栈与弹栈.将中序遍历作为例子:指针访问到结点后,应先记住结点数值入栈,再往左边便利.假如指针为空,弹栈,最后将指针赋值给右 ...
- 二叉链表的建立和遍历 完整的前,中,后和层序建立和遍历
前序,中序.后序.层序建立二叉链表. 无论看没看懂,都值得一看
- 二叉树的二叉链表存储结构构建以及先序遍历
#include <stdio.h> #include <stdlib.h> #define OK 1 #define ERROR -1 typedef int TElemTy ...
- 数据结构-二叉链表的结构与实现
目录 一.引言 二.什么是二叉链表 三.二叉链表的结构 四.二叉链表的实现 1. 创建二叉链表 2. 遍历二叉链表 3. 插入节点 4. 删除节点 五.应用场景 六.总结 七.代码示例 一.引言 数据 ...
- 数据结构C++边学边做--二叉树的实现(二叉链表实现遍历操作)
二叉树的实现(二叉链表实现遍历操作) 一.二叉树的遍历 二.二叉链表的数据结构定义 三.二叉链表类实现 1.类声明 2.BiTree->构造函数:Create创建二叉链表 3.~BiTree-& ...
- 二叉链表-创建、遍历(前序、中序、后序、非递归、层次)、复制、计算深度、结点数、销毁(C语言)
目录 二叉树的定义 二叉树的性质 二叉链表的基本操作 二叉链表的结构定义 前序遍历创建 前序.中序.后序遍历 中序遍历的非递归算法(栈) 层次遍历(队列) 复制二叉树 计算深度 计算总结点数与叶子结点 ...
- 数据结构:(翻转二叉树) 若二叉树采用二叉链表作存储结构,要交换其所有分支结点的左右子树的位置,采用()遍历方法最合适
题目 若二叉树采用二叉链表作存储结构,要交换其所有分支结点的左右子树的位置,采用()遍历方法最合适?(北京航空航天大学1999,北京工业大学2016) A. 前序 B. 中序 C. 后序 D. 层次 ...
- C语言递归实现二叉树(二叉链表)的三种遍历和销毁操作(实验)
今天写的是二叉树操作的实验,这个实验有三个部分: ①建立二叉树,采用二叉链表结构 ②先序.中序.后续遍历二叉树,输出节点值 ③销毁二叉树 二叉树的节点结构定义 typedef struct BiTNo ...
- 3004基于二叉链表的二叉树的双序遍历(附题意解释)
描述 设二叉树中每个结点的元素均为一个字符,按先序遍历的顺序建立二叉链表,编写递归算法实现该二叉树的双序遍历(双序遍历是指对于二叉树的每一个结点来说,先访问这个结点,再按双序遍历它的左子树,然后再一次 ...
最新文章
- sqlserver中查找长时间未提交事务
- 背景图片随着浏览器拖动而变化
- java post请求 json_好程序员Java教程分享Vue插件之Axios
- Java多线程同步Synchronized使用分析
- TechWorld2021技术嘉年华,解锁“不一样”的技术盛会
- js ...运算符_「 giao-js 」用js写一个js解释器
- React Native组件(四)TextInput组件解析
- 自从上了 SkyWalking,睡觉真香!!来,通过 Excel 来认识神器——POI
- mysql数据库备份机制_mysql备份机制有哪些
- 解决登录wordpress时,密码账号正确却出现INSECURE PASSWORD警告的问题
- Servlet的三个名字
- 华为od机考真题-数大雁,1419,数青蛙
- Sulley vmcontrol.py 使用注意
- 【基础课程】计算机网络
- imx6ul——uboot添加RTC,pcf8563驱动
- 今天老夫就把完全背包的底裤给你扒出来瞅瞅!!!
- 选好食用油,为健康加油!
- 昆明最快dns服务器地址,手机网速最快的dns地址
- 宅公司 宅家里 养生锻炼必备的少林八段锦
- 华为鸿蒙,告别 PPT,代码全部开源!
热门文章
- 水果店如何处理损耗,水果店的损耗控制
- 互联网产品经理有哪些相关认证能提升能力认可度?
- javascript中节点操作、节点属性、节点获取、创建节点、删除节点、克隆节点
- Pannellum 360全景图片展示
- IWOM mark 20111228 第92期 社会化阅读专题(转来收藏)
- C语言 socket函数
- IIS配置.net core出现的错误代码(0x80070005、0x8007000d、IIS Error 502.5)的解决办法
- C#的委托与事件(张子阳原创)
- 基于Java+SSM+MySQL的水果商城系统
- webstorm 激活破解