【LCR174】寻找二叉搜索树中的目标节点

 

某公司组织架构以二叉搜索树形式记录,节点值为处于该职位的员工编号。请返回第 cnt 大的员工编号。


var findTargetNode = function (root, cnt) {
  // 定义一个全局变量用于存储结果
  var result = null;
  // 中序遍历,逆序遍历二叉搜索树
  function inOrderTraversal(node) {
    if (!node || cnt === 0) {
      return;
    }
    // 遍历右子树
    inOrderTraversal(node.right);
    // 处理当前节点
    cnt--;
    if (cnt === 0) {
      result = node.val;
      return;
    }
    // 遍历左子树
    inOrderTraversal(node.left);
  }
  // 调用中序遍历函数
  inOrderTraversal(root);
  return result;
};

本文遵守 Attribution-NonCommercial 4.0 International 许可协议。 Attribution-NonCommercial 4.0 International