二叉树
sinat_41479651
这个作者很懒,什么都没留下…
展开
-
二叉搜索树的中序遍历
// DFSmid.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//二叉树深度优先中序遍历非递归算法#include <iostream>#include<stack>using namespace std;struct BinaryNode { int val; BinaryNode* lchild; BinaryNode* rchild;};//中序遍历void DFSmid0308(BinaryNode* root){原创 2021-03-16 19:16:09 · 933 阅读 · 0 评论 -
二叉树题目
需要重看的二叉树题目剑指 Offer 07. 重建二叉树输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树剑指 Offer 26. 树的子结构输入两棵二叉树A和B,判断B是不是A的子结构剑指 Offer 36. 二叉搜索树与双向链表剑指 Offer 28. 对称的二叉树请实现一个函数,用来判断一棵二叉树是不是对称的。剑指 Offer 33. 二叉搜索树的后序遍历序列输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果...原创 2021-03-16 18:51:08 · 59 阅读 · 0 评论 -
外部输入建立二叉树
// createBinaryTree.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//外部输入建立二叉树#include <iostream>#include<vector>using namespace std;//根据输入还原一颗二叉树,在运行界面输入//输入数组的格式按照 没有结点的位置使用# 的先序遍历来输入struct BinaryNode { char ch; struct BinaryNode*lchild; str原创 2021-03-09 16:07:23 · 204 阅读 · 0 评论 -
AVL树的建立
// AVLTree.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <iostream>#include<algorithm>#include<vector>class AVLNode {public: int data; AVLNode *lchild; AVLNode *rchild; AVLNode(int x) :data(x), lchild(NULL), rchild(NULL) {} i原创 2021-03-09 16:01:01 · 210 阅读 · 0 评论 -
二叉搜索树建立
// BinaryTree2.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <iostream>#include<vector>using namespace std;struct BinaryNode { int val; BinaryNode* left; BinaryNode* right; BinaryNode(int x) :val(x), left(NULL), right(NULL) {}};原创 2021-03-09 15:54:20 · 122 阅读 · 0 评论 -
前序中序建立二叉树
//先序和中序结果创建二叉树#include <iostream>#include<vector>using namespace std;struct BinaryNode { int val; BinaryNode* left; BinaryNode* right;};BinaryNode* createTree(vector<int>pre,vector<int>mid){ if (mid.size() == 0)return NU原创 2021-03-09 12:03:06 · 224 阅读 · 0 评论 -
二叉树的高度
// hashHeight.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <iostream>#include<map>#include<algorithm>#include<vector>#include<unordered_map>using namespace std;struct BinaryNode { int val; BinaryNode* lchild; Bin原创 2021-03-09 10:51:33 · 190 阅读 · 0 评论 -
层序序列创建二叉树、层序遍历及分层遍历
// BFSCreateTree.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//层序遍历创建二叉树 条件:输入序列是满二叉树#include <iostream>#include<vector>#include<queue>using namespace std;struct BinaryNode { int ch; BinaryNode*lchild; BinaryNode*rchild;};//利用层序序列原创 2021-03-09 10:46:34 · 935 阅读 · 0 评论