您当前的位置: 首页 >  搜索

孑渡

暂无认证

  • 10浏览

    0关注

    178博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Leetcode】剑指Offer 33:二叉搜索树的后序遍历序列

孑渡 发布时间:2022-09-25 08:44:58 ,浏览量:10

输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回 true,否则返回 false。假设输入的数组的任意两个数字都互不相同。 参考以下这颗二叉搜索树: 5 / 2 6 / 1 3 示例 1: 输入: [1,6,3,2,5] 输出: false 示例 2: 输入: [1,3,2,6,5] 输出: true 提示: 数组长度 bool: def search(prior:int, tail:int): if prior >= tail: return True p = prior while postorder[p] postorder[tail]: p += 1 return p == tail and search(prior, m - 1) and search(m, tail - 1) return search(0, len(postorder) - 1)

此题主要做的是我不熟悉的数组形式给出的二叉搜索树。该题算是帮助理解了数组形式的性质。事实上,对于其他两种(先序,中序),这个遍历方法也是很值得借鉴的。下次再遇到遍历数组的二叉树就可以尝试一下了。

此题还有两种非常巧妙的解法,希望今天能看懂并且更新~

关注
打赏
1663211900
查看更多评论
立即登录/注册

微信扫码登录

0.0885s