当前位置: 首页 > wzjs >正文

慈溪做无痛同济&网站深圳百度推广

慈溪做无痛同济&网站,深圳百度推广,wordpress 主题猫,龙岗做网站公司灵感来源 - 保持更新,努力学习 - python脚本学习 将有序数组转换为二叉搜索树 解题思路​​ ​​选择中间节点​​ 由于数组已排序,​​中间元素​​作为根节点可保证左右子树节点数相近。若数组长度为偶数,可选择中间左边或右边元素。 …

灵感来源 

- 保持更新,努力学习

- python脚本学习

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

解题思路​

  1. ​选择中间节点​
    由于数组已排序,​​中间元素​​作为根节点可保证左右子树节点数相近。若数组长度为偶数,可选择中间左边或右边元素。

  2. ​递归构建子树​
    将数组分为左半部分和右半部分,分别递归构建左子树和右子树。递归终止条件是子数组为空(即左边界超过右边界)。

  3. ​时间复杂度与空间复杂度​

    • ​时间复杂度​​:O(n),每个元素仅访问一次。
    • ​空间复杂度​​:O(log n),递归栈深度与树高度一致。
  1. class TreeNode:def __init__(self, val=0, left=None, right=None):self.val = valself.left = leftself.right = rightdef sortedArrayToBST(nums):def helper(left, right):if left > right:return Nonemid = (left + right) // 2root = TreeNode(nums[mid])root.left = helper(left, mid - 1)root.right = helper(mid + 1, right)return rootreturn helper(0, len(nums) - 1)

逐行解释

class TreeNode:# 定义二叉搜索树的节点结构def __init__(self, val=0, left=None, right=None):self.val = val        # 当前节点存储的值self.left = left      # 指向左子节点的指针self.right = right    # 指向右子节点的指针def sortedArrayToBST(nums):# 将有序数组转换为高度平衡的二叉搜索树# 输入:有序数组 nums# 输出:二叉搜索树的根节点def helper(left, right):# 辅助递归函数,用于构建指定索引范围内的二叉搜索树# left: 当前子树在数组中的左边界索引# right: 当前子树在数组中的右边界索引# 递归终止条件:当左边界索引大于右边界索引时# 表示当前子树为空,返回 Noneif left > right:return None# 选择中间元素作为当前子树的根节点# 使用整数除法计算中间索引mid = (left + right) // 2# 创建根节点,值为中间元素root = TreeNode(nums[mid])# 递归构建左子树# 左子树的元素范围为原数组的 [left, mid-1]root.left = helper(left, mid - 1)# 递归构建右子树# 右子树的元素范围为原数组的 [mid+1, right]root.right = helper(mid + 1, right)# 返回构建好的当前子树的根节点return root# 从整个数组范围开始构建二叉搜索树return helper(0, len(nums) - 1)

http://www.dtcms.com/wzjs/50377.html

相关文章:

  • 网站设计有哪几种设计方法搜索引擎优化报告
  • 网站怎么做关键词杭州搜索推广公司
  • 杭州建设工程信息网站网络域名
  • 重庆陵水疫情最新消息什么是seo文章
  • 网站建设要注意那些问题铜陵seo
  • 西安 做网站最全的搜索引擎
  • 群晖 做网站服务器网店推广运营
  • 网站维护源码独立站
  • 无锡制作网站公司哪家好论坛推广软件
  • 好三网网站如何做一个网站
  • 做网站备案要多久西安seo服务
  • 做政府邀请函网站是哪个seo综合查询网站
  • 徐州建网站sem优化技巧
  • 鲅鱼圈网站建设短视频赚钱app软件
  • 杭州专业网站优化公司宁波网站建设网站排名优化
  • 网站建设解决方案好处推广小程序
  • 来宾住房和城乡建设局网站网站seo价格
  • 公司建设网站的目的北京百度推广seo
  • 厦门 外贸公司做网站汕头网站建设技术外包
  • 做网站需要哪些东西和步骤seo推广 课程
  • 宝应县住房建设局网站外链生成网站
  • 能进封禁网站的手机浏览器网站的收录情况怎么查
  • 7777av域名成交价格百度seo排名优化软件分类
  • 石家庄物流网站建设18款禁用软件黄app免费
  • 天天做网站百度竞价托管
  • 做简历的网站有it培训班出来工作有人要么
  • 优化网站公司百度资源搜索平台
  • 天津小程序网站开发公司长春seo主管
  • 企业网站如何做优化怎么推广网站
  • 凡网站创建百度云建站