二叉树
文章平均质量分 85
树
Hey XIN
这个作者很懒,什么都没留下…
展开
-
二叉树前序/中序/后序遍历的非递归实现(含Morris中序遍历)
前言: 树的遍历是一种重要的运算,其非递归实现是使用栈来模拟递归的过程,通过不断将节点及其左子节点压入栈中,出栈相当于回到原先的节点(回溯),在不同时机对栈内元素进行输出(也可以是某种操作),即可实现前中后序遍历。 前序遍历: 即按照根-左-右的顺序遍历,入栈的同时对节点进行输出(即先输出根节点再输出左子树),出栈时由于当前节点以及左子节点已经在入栈过程中输出了,因此将当前节点出栈并转而对右子树的节点进行入栈以及后续输出。 void PreOrder(Tree h) { stack<Tree>原创 2021-03-16 22:08:39 · 138 阅读 · 0 评论 -
PTA数据结构练习题——平衡二叉树的根
题目介绍: 将给定的一系列数字插入初始为空的AVL树,请你输出最后生成的AVL树的根结点的值。 输入格式: 输入的第一行给出一个正整数N(≤20),随后一行给出N个不同的整数,其间以空格分隔。 输出格式: 在一行中输出顺序插入上述整数到一棵初始为空的AVL树后,该树的根结点的值。 输入样例1: 5 88 70 61 96 120 输出样例1: 70 输入样例1: 7 88 70 61 96 120 90 65 输出样例1: 88 代码实现: #include<iostream> #inc原创 2020-06-08 21:07:23 · 638 阅读 · 0 评论