二叉搜索树的第k大节点题目的附加条件是不能二叉树全量存储到另外的存储空间。所以不能直接中序遍历再去取数组的倒数第三个元素。这题的关键点是:二叉搜索树(BST)中序遍历是升序那么逆中序遍历(右 - 根 - 左)就是降序第k个访问到的节点,就是第k大节点并且你提到的附加条件:不能把整棵树全量存到额外空间里所以不能先中序遍历生成数组再取值。正确做法是:遍历过程中计数找到第k个时直接返回思路对于 BST:左子树 根节点 右子树所以:中序遍历:左 - 根 - 右,得到升序逆中序遍历:右 - 根 - 左,得到降序比如这棵树:5 / \ 3 7 / \ / \ 2 4