XX的杰子 2023-06-11 12:21 采纳率: 69.2%
浏览 17

将有序数组转换为二叉搜索树

力扣 108. 将有序数组转换为二叉搜索树
给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树。
高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。
为什么平衡的二叉搜索树构建时需要选取有序数组的中间节点作为搜索树的根节点呢?可不可以从数组的第一元素作为根节点,以后按照搜索树和平衡树的准则构建呢?我下面的构造过程对不对呢?望朋友们为我指点迷津,谢谢啦!

img

图1、2是力扣官方给的答案,图a-g是我的构建过程。

  • 写回答

2条回答 默认 最新

  • 真相重于对错 2023-06-11 15:35
    关注

    使用第一个节点,就需要用到旋转,否则不平衡,从中间开始构建简单些

    评论

报告相同问题?

问题事件

  • 创建了问题 6月11日