我正在处理Leet代码问题112。路径和:
给定一个二叉树的< code >根和一个整数< code>targetSum,如果该树有一个从根到叶的路径,使得沿着该路径的所有值相加等于< code>targetSum,则返回< code>true。
叶子是没有子级的节点。
当使用这个测试执行我的代码时:
[2,0]
targetSum = 0
…结果为真,但预期结果为假。
它似乎通过根运行-
我不知道如何修改这个程序?
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
*
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
bool checkhasPath(struct TreeNode* root,int targetSum,int sum){
sum += root->val;
count++;
if(root == NULL) return 0;
if((sum == targetSum) && (!root->left && !root->right)) return 1;
bool res1, res2;
if(root->left)
res1 = checkhasPath(root->left,targetSum,sum);
if(root->right)
res2 = checkhasPath(root->right,targetSum,sum);
return res1 || res2;
}
bool hasPathSum(struct TreeNode* root, int targetSum){
return checkhasPath(root,targetSum,0);
}
两个问题:
>
RES1
和 RES2
未初始化。当 if
条件为 false 时,除了它们开始的未定义值之外,它们不会获得其他值。
检查< code>root == NULL应该在评估< code>root-之前完成
所以:
bool checkhasPath(struct TreeNode* root,int targetSum,int sum){
if(root == NULL) return 0; // do this first
sum += root->val;
if((sum == targetSum) && (!root->left && !root->right)) return 1;
bool res1 = 0, res2 = 0; // initialise
if(root->left)
res1 = checkhasPath(root->left,targetSum,sum);
if(root->right)
res2 = checkhasPath(root->right,targetSum,sum);
return res1 || res2;
}
我以前写过一个测试,它成功了,但现在我得到了一个断言错误:JSON路径没有值。
因此,问题如下:给定任何整数数组(相当大),返回数组中任何两个元素之间的最大差异,使得较大的元素比较小的元素出现在更高的索引处。返回-1,如果没有找到这样的对。示例: 7 2 3 10 2 4 8 1 其中第一个元素是数组的大小(或输入的行数),其余元素是元素。上述样本输出为8(10-2)。 我的代码如下: 这是Hackerrank提出的一个问题,但它只适用于10个可能的测试用例中的3个。其余的案
我的应用程序使用spring boot版本2.5.0和spring cloud starter netflix zuul 2.2.8。释放 在最新的spring boot版本2.5.0中,getErrorPath()API从ErrorController中删除,但最新的spring cloud starter netflix zuul 2.2.8。RELEASE仍调用此API并导致此错误 有人遇到
在程序运行过程中,总会遇到各种各样的错误。 有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的。 有的错误是用户输入造成的,比如让用户输入email地址,结果得到一个空字符串,这种错误可以通过检查用户输入来做相应的处理。 还有一类错误是完全无法在程序运行过程中预测的,比如写入文件的时候,磁盘满了,写不进去了,或者从网络抓取数据,网
在程序运行过程中,总会遇到各种各样的错误。 有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的。 有的错误是用户输入造成的,比如让用户输入email地址,结果得到一个空字符串,这种错误可以通过检查用户输入来做相应的处理。 还有一类错误是完全无法在程序运行过程中预测的,比如写入文件的时候,磁盘满了,写不进去了,或者从网络抓取数据,网
我通过xampp软件长期使用Mysql,运行良好。现在我安装了Mysql软件,在配置Mysql软件时,我给出了端口3307,在使用3306的Xampp中独立于Mysql运行它。但它不起作用,我运行xampp时遇到了以下错误,我得到了屏幕,上面写着以下错误 MySQL服务检测到错误路径更改XAMPP MySQL和控制面板设置或先手动卸载/禁用其他服务找到路径:"C:\Program Files\My