首页
DreamJudge
院校信息
考研初试
机试真题
讨论区
兑换中心
登录
注册
上岸
以下题解仅供学习参考使用。
抄袭、复制题解,以达到刷AC率/AC数量或其他目的的行为,在N诺是严格禁止的。
N诺非常重视学术诚信。此类行为将会导致您成为作弊者。具体细则请查看N诺社区规则。
小王桐学
2024年3月5日 19:42
二叉搜索树 题解:C++建树判断
P1317
回复 0
|
赞 3
|
浏览 1.4k
#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct node{ char data; struct node *lchild,*rchild; }BiTNode,*BiTree; //根据序列建立搜索树 void CreateTree(BiTree &T,char c) { if(!T) { T = (BiTNode *)malloc(sizeof(BiTree)); T->data = c...
孙某人
2024年2月28日 17:05
二叉搜索树 题解:新手方法易于理解
P1317
回复 0
|
赞 5
|
浏览 1.1k
自己想的,水平比较菜用的原始办法,估计都能看懂 两个要点 1.先建立二叉排序树,跟以前的题一样 2.要判断的序列再建立二叉排序树(跟第一步步骤一样) 3.判断这两个树是不是同一个(重点) #include <iostream> #include <string.h> using namespace std; typedef struct node{ int data; struct node *l,*r; }node,*Lnode; void create(Lnode &L,int temp){ ...
爱吃花朵汤圆
2023年5月31日 17:28
二叉搜索树 题解:
P1317
回复 0
|
赞 2
|
浏览 2.1k
不用建树的做法,直接判断两个序列每次分开的左右子树不为空的话,其左右子树第一位是否相等即可 。 #include <iostream> #include <vector> using namespace std; #define SIZE 10 int judge(int* a, int x, int* b, int y); int main(void) { int N; int bst[SIZE], tgt[SIZE]; while(cin>>N){ if (N == 0)...
chiangtau
2022年7月23日 14:28
一步一步封装函数实现
P1317
回复 1
|
赞 5
|
浏览 6.2k
#include<bits/stdc++.h> using namespace std; //二叉树定义结构 typedef struct node{ char data; struct node *lchild, *rchild; }*BST; //建树 void create(BST &T, char x){ if(T==NULL){ T = new node; T->data = x; T->lchild = NULL; T-...
tuesdasy
2022年3月8日 15:25
先序和中序能够唯一确定一棵树(易于理解)
P1317
回复 0
|
赞 1
|
浏览 7.3k
新手 #include <iostream> using namespace std; #include <string.h> typedef struct node //结构体 { int data; struct node *lchild, *rchild; }*BSTree; int i = 0;//全局变量 int j = 0; void InsertBSTree (BSTree &T, int x)//建立BST { if ( T == NULL) { T = new node; ...
Dear_Mr_He
2022年2月8日 16:25
建树后比较先序遍历结果是否相同
P1317
回复 0
|
赞 3
|
浏览 5.9k
对每个序列建树,然后将n个序列对应的二叉搜索树的先序遍历结果和第一个序列对应的二叉搜索树的先序遍历结果进行比较,若相同,则输出YES,否则输出NO。 #include<iostream> #include<vector> using namespace std; typedef struct node { char data; struct node *lchild, *rchild; } *BitTree; // reference 存储第一个序列对应的二叉搜索树的先序遍历结果,each 存储每颗二叉树的先序遍历结果 ve...
山楂
2021年2月25日 12:01
记录
P1317
回复 0
|
赞 0
|
浏览 8.3k
算法思路: 遍历待判断序列: 性质: 如果是同一颗二叉排序树,则判断序列的当前元素,在原二叉排序树中的位置的父节点一定是之前就被访问过的。 遍历前,根结点要预处理成预访问结点(如果根节点都不同,直接就可以no了); 每访问一个结点都把他的孩子结点设置成预访问的(即往后可以被访问) 如果访问到的结点不是预访问的结点,则表明他们不是同一颗二叉排序树,返回no,结束遍历 遍历顺利结束,返回yes; #include<iostream> #include<...
James
2021年2月1日 18:47
二叉树是否对称的同类题
P1317
回复 0
|
赞 1
|
浏览 10.0k
对称二叉树中我们从根节点左右两边出发 分别向反方向判断 bool travel(BiTree l,BiTree r){ if(l==NULL&&r==NULL){ return true; } else if(l==NULL||r==NULL){ return false; &nb...
老猫
2021年1月20日 09:55
一个弱鸡思路
P1317
回复 0
|
赞 2
|
浏览 9.5k
弱鸡想法: 前序和中序确定一个树 所以求出每个树的前序和中序序列然后看是否相同 #include <iostream> #include <string> #include <string.h> using namespace std; string preorder_1=""; string midorder_1=""; string preorder_2=""; string midorder_2=""; typedef struct node { int data; struct node *lchil...
1
2
题目
二叉搜索树
题解数量
19
发布题解
在线答疑
热门题解
1
二叉搜索树 题解:
2
二叉搜索树 题解:递归处理
3
二叉搜索树 题解:
4
二叉搜索树 题解:效率不是很高,但是好理解
5
二叉搜索树 题解:AC,建立二叉搜索树以及比较两个二叉树是否相同
6
一步一步封装函数实现
7
二叉搜索树 题解:新手方法易于理解
8
直接使用字符串做递归判断,需要计算大于根的字串和小于根的字串
9
用顺序存储二叉树的方法建树再进行比较
10
二叉搜索树 题解:C++建树判断