农场主人有一群牛,他给每只牛都打了一个编号。这些牛按照编号的大小形成了一颗二叉搜索树。现在农场主人想知道编号第k大的牛是哪一只,你能帮他设计一个算法来实现这个功能吗?
区块链毕设网qklbishe.com为您提供问题的解答
农场主人有一群牛,他给每只牛都打了一个编号。这些牛按照编号的大小形成了一颗二叉搜索树。现在农场主人想知道编号第k大的牛是哪一只,你能帮他设计一个算法来实现这个功能吗?
package main import _"fmt" import . "nc_tools" /* * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } */ /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param root TreeNode类 * @param k int整型 * @return int整型 */ func kthLargest( root *TreeNode , k int ) int { ans:=[]int{} var dfs func(*TreeNode) dfs=func(root *TreeNode){ if root==nil{ return } dfs(root.Right) ans=append(ans,root.Val) dfs(root.Left) } dfs(root) return ans[k-1] }
15:40
以上就是关于问题农场主人有一群牛,他给每只牛都打了一个编号。这些牛按照编号的大小形成了一颗二叉搜索树。现在农场主人想知道编号第k大的牛是哪一只,你能帮他设计一个算法来实现这个功能吗?的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训