17_7_21 二叉树的层序遍历
来源:互联网 发布:网络利弊议论文 编辑:程序博客网 时间:2024/06/09 20:20
题目要求:
实现一颗二叉树的层序遍历
难点分析:
没有要求,前序,或者中序、后序等常规一路走到底的遍历。
而是,按行从左到右遍历。第一次遇见,可能有点不适应。
需要想个办法,记录每一行应该走的顺序。
思路:
可以利用队列来实现。
1,先将根节点入队列,
2,进入循环,队首结点出队列,输出其值。
3,将其左右孩子节点入队列,
4,进行2-3循环,直到队列为空
实现代码:
template <typename T>void BinaryTree<T>::Level_Order(){ if (m_pRoot) //m_pRoot为二叉树的根结点 { //当二叉树不为空时 queue<Node*> q; q.push(m_pRoot); while (!q.empty()) //利用队列记录,每一层中,节点遍历的先后顺序 { Node* pTemp = q.front(); q.pop(); cout << pTemp->m_data << " "; if (pTemp->m_pLeft) q.push(pTemp->m_pLeft); if (pTemp->m_pRight) q.push(pTemp->m_pRight); } } cout << endl;}
阅读全文
1 0
- 17_7_21 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉查找树的层序遍历
- 二叉树的层序遍历
- SDUTACM 二叉树的层序遍历
- 二叉树的层序遍历
- 二叉树的层序遍历
- Leetcode038--二叉树的层序遍历
- Cake
- 关于 Android 程序员最近的状况
- 一.Gradle的介绍和安装
- ajax获取后台json数据莫名其妙出现空格
- Example 3.8:Gridworld
- 17_7_21 二叉树的层序遍历
- IO操作练习实例——文件的创建
- D_D系统构建-MBR(7)加载loader文件代码filesystem.inc解析
- Head First Python(中文版)pdf
- 设计模式之代理模式
- 【剑指offer】面试题28:对称的二叉树
- c语言数据结构复习(一)
- git--配置别名
- Kubernetes核心原理(二)之Controller Manager