新节点总长在哪个位置

按标准做法插进去的新节点,总是成为一个【0】。

开始练习 →

同样几个数插入顺序不同

同样一批数,按不同的顺序插进 BST,结果是【0】。

开始练习 →

插一个已经有的值(C++)

往 BST 里插一个已经存在的值,标准做法是【0】。

开始练习 →

插入 20 后它挂在谁下面

还是那棵树,再插一个 20。运行下面这段程序: #include <iostream> #include <string> #include <vector> using namespace std;

开始练习 →

自己写插入

补全 insert:用递归把 val 插进去,返回这棵子树新的根。把 17、24、15 依次插进空树,输出根的右边是几。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

插完之后中序还得是升序

同一个 insert。插完五个数之后再插一个 20,然后中序走一遍,输出第 4 个数。插对了的话中序仍然是升序的。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

插重复的值树不能变

同一个 insert:碰到已经存在的值,要原样返回、什么都不加。五个数插完之后再插一次 17,输出树里一共有几个节点。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

为什么中序正好是升序

第 1 步:中序:左、根、右 第 2 步:访问 20,收进来 第 3 步:访问 30,收进来 第 4 步:访问 50,收进来 第 5 步:访问 60,收进来 第 6 步:访问 70,收进来 第 7 步:收出来的正好是升序 50 30 70

开始练习 →

想从大到小输出怎么办(C++)

要让 BST 从大到小输出,做法是【0】。

开始练习 →

中序结果和树的形状

同一批数插成形状不同的两棵 BST,它们的中序结果【0】。

开始练习 →