任何人都可以请建议,下面的代码找到BST中k个最小元素的总和有什么问题?它返回树中所有节点的总和。二叉搜索树中K个最小元素的总和
public int findSum(Node root, int k){
int count = 0;
return findSumRec(root, k, count);
}
private int findSumRec(Node root, int k, int count) {
if(root == null)
return 0;
if(count > k)
return 0;
int sum = findSumRec(root.left, k, count);
if(count >= k)
return sum;
sum += root.data;
count++;
if(count >= k)
return sum;
return sum + findSumRec(root.right, k, count);
}
我会重复使用中间遍历的代码来限制遍历到只有7个电子元件 –
什么是预期输出和示例输入?你得到什么输出? – cyroxis
你的代码是在树中添加所有数字,其中是逻辑来验证它是否最小 –