不是表达式转换,而是从预序到Inorder(不是表达式)的转换
Not expression conversion but conversion from preorder to Inorder (not expression)
我不要求表达式转换
从中缀到前缀的转换
我只是问对于 BST,如果输入以前缀表示法的形式给出,即 BST 的预序遍历,那么我如何将值序列转换为中缀表示法,即 BST 的无序遍历。
8
/
1 12
/
5 9
/
4 7
/
6
例如,预序遍历将给出 8 1 5 4 7 6 12 9
如何转换这些值序列(输入)到无序遍历表达式 1 4 5 6 7 8 9 12。
在某些情况下,AS 顺序表达式更容易处理...
使用 BST:
前缀:左子树、节点、右子树。
中缀:节点、左子树、右子树。
后缀:右子树、左子树、节点。
转换取决于您遍历树的方式。
Let
V = 顶点
L = 左子树
R = 右子树
预购 = VLR
无序 = LVR
后序 = LRV
(只需切换顺序即可修复,它是一样的)
将它们放回以将前缀值转换为中缀值的一种方法是再次使用前缀值创建一个二叉搜索树并执行 Inorder 遍历。
或!
只是排序伙计...(如果您将它们压扁成一条线(从上到下挤压),BST 总是排序)
相关文章:
- "()"如何在C++中将语句转换为表达式?
- 静态强制转换内的表达式
- 如何将Javascript正则表达式转换为C++11正则表达式
- 表达式模板玩具示例:用户定义的强制转换不适用于复杂类型
- 为什么这个涉及重载运算符和隐式转换的C++表达式是不明确的
- 如何将 xt::sum 表达式结果转换为整数
- 使用向量将给定表达式转换为波兰表示法时出现运行时错误
- 转换的常量表达式措辞
- 将返回表达式隐式转换为布尔值
- 如何使用 ASCII 转换使用字符堆栈计算后缀表达式
- 表达式到C++类类型转换器/类型转换
- MISRA 警告<复杂表达式隐式转换为不同的基本类型>
- 如何使用 cpp 将 z3 表达式转换为字符串
- 如何将表达式转换为变量
- 缩小从"int"(常量表达式)到"无符号int"的转换 - MSVC vs gc
- 非常量表达式的左值到右值转换的结果是常数吗?
- 转换特征矩阵类型时,错误:在"float"之前预期主表达式
- C#指针:错误CS0254:固定语句赋值的右侧可能不是强制转换表达式
- spoj:ONP-转换表达式
- 复杂的 C 样式类型转换表达式的工作原理