package top100liked // https://leetcode.cn/problems/kth-smallest-element-in-a-bst/description/?envType=study-plan-v2&envId=top-100-liked type TreeNode struct { Val int Left *TreeNode Right *TreeNode } func kthSmallest(root *TreeNode, k int) int { res, cnt := 0, 0 var helper func(node *TreeNode) bool helper = func(node *TreeNode) bool { if node == nil { return false } if helper(node.Left) { return true } cnt++ if cnt == k { res = node.Val return true } return helper(node.Right) } helper(root) return res }