【问题标题】:What does this pseudo code mean?- Binary Search Tree Successor Function这个伪代码是什么意思?- 二叉搜索树后继函数
【发布时间】:2010-02-21 04:50:55
【问题描述】:
if right[x] != NIL
 then return TREE-MINIMUM(right[x])

 y<-p[x]
 while y!= NIL and x = right[y]
  do x<-y
  y<-p[y]
 return y

我知道“if right[x] != NIL then return tree-min”是什么意思,我已经把它翻译成:

if(p->RChild) return fMinValue(p->RChild);//returns the min value of the sub-tree starting at the right child node of p

其余的我很难理解。

【问题讨论】:

    标签: binary-search-tree


    【解决方案1】:

    &lt;- 很可能是赋值运算符。 p 我猜是父母。你还有什么困惑?

    【讨论】:

    • p[x] 和 p[y]。 p 是指针吗? [] 的内容是 p 所指向的吗?编辑:=) 现在说得通了。谢谢!
    • 按照我的理解,p[x] 是一个返回节点x 的父节点的函数。那么right[x] 将是x 的右孩子。
    【解决方案2】:

    这里的p[] 几乎可以肯定的意思是“的父节点”。您正在处理节点x,因此p[x] 表示“当前节点的父节点”(就像right[x] 表示“当前节点的右手子节点”一样)。

    &lt;- 表示法是赋值。喜欢类似 c 语言的 =

    这里介绍的算法的第二部分沿着树向上走,寻找您第一次上升左侧链接而不是右侧链接。但我不确定我是否会将其描述为后继功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-14
      • 1970-01-01
      • 1970-01-01
      • 2010-10-19
      • 2016-12-09
      • 1970-01-01
      相关资源
      最近更新 更多