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

网站主办者有效证件电子件二维码推广赚佣金平台

网站主办者有效证件电子件,二维码推广赚佣金平台,做网站先做母版页,托里县城乡建设局网站题目:给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 小的元素(从 1 开始计数)。示例 1:输入:root [3,1,4,null,2], k 1 输出:1 示例 2&#xff1…

题目:

给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 小的元素(从 1 开始计数)。

示例 1:
在这里插入图片描述
输入:root = [3,1,4,null,2], k = 1
输出:1

示例 2:
在这里插入图片描述
输入:root = [5,3,6,2,4,null,null,1], k = 3
输出:3

提示:
树中的节点数为 n 。
1 <= k <= n <= 104
0 <= Node.val <= 104

题解:

# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, val=0, left=None, right=None):
#         self.val = val
#         self.left = left
#         self.right = right
# 中序遍历,就是从小到大开始遍历
class Solution:def kthSmallest(self, root: Optional[TreeNode], k: int) -> int:ans = 0def dfs(node:Optional[TreeNode]) -> None:nonlocal k,ansif node is None or k==0:return # 遍历左子树dfs(node.left)k-=1if k==0:ans = node.val# 遍历右子树dfs(node.right)dfs(root)return ans

思路

由于中序遍历就是在从小到大遍历节点值,所以遍历到的第 k 个节点值就是答案。

在中序遍历,即「左-根-右」的过程中,每次递归完左子树,就把 k 减少 1,表示我们按照中序遍历访问到了一个节点。如果减一后 k 变成 0,那么答案就是当前节点的值,用一个外部变量 ans 记录。

http://www.dtcms.com/a/580619.html

相关文章:

  • 速升网站外贸福步论坛登录
  • 做网站专用软件云小店自助下单
  • 专业建站公司收费标准如何做网站怎么赚钱吗
  • 重庆建网站 私单营销型网店与品牌型网店的区别
  • 数据系统网站建设必要性高端网站建设费用
  • 一起做的网站深圳建筑人才网官方网站
  • 国示建设网站江苏省建设协会网站
  • 个体网站建设教育培训网站排名
  • 做废旧回收哪个网站好网络建设与维护
  • 网站地址栏wordpress 后台拿shell
  • wap网站排名深圳网站关键词排名优化
  • 做网站会用到的色彩代码单词网站建设 上海
  • 网站案例比较多的公司网页升级访问新区域
  • o2o网站做推广公司ui设计师掌握技能
  • 广州微网站建设效果百度免费官网入口
  • 网站百度百科怎么做用wordpress做企业门户
  • 洛阳新光建站房地产最新政策调整
  • 做g3云推广需要网站wordpress成品图
  • 做商城网站技术要点产品毕业设计作品网站
  • 苏州市相城区建设局网站手机app制作多少钱
  • 网站内容免费网站建设方案
  • 朝阳市建设厅查询网站外国人做的网站
  • 观山湖网站建设推广网站程序代码优化
  • 做网站产品资料表格环保网站模版
  • 用凡科做网站需要花钱吗wordpress 仿糗百
  • 网站单页模板制作软件四川建设人才考试官网
  • 做网站设计的网站品牌建设全面升级
  • 各大网站收录入口衣柜推拉门图案设计网站
  • 企业网站建设教学深圳制作外贸网站
  • 商务网站开发实训报告百度推广要企业自己做网站吗