C++ 控件到达非void函数的末尾[-Werror=返回类型](只是一个简单的判断) struct节点{ 树节点*子节点; 智力深度; }; int minDepth(TreeNode*root){ 队列q; if(root==NULL) 返回0; 节点cur={root,1}; q、 推(cur); 而(!q.empty()){ 节点温度=q.front(); q、 pop(); if(临时子节点->左==NULL和临时子节点->右==NULL) 返回温度深度; 如果(临时子节点->左){ 节点温度={temp.SubNode->左,温度深度+1}; q、 推动(温度); } if(临时子节点->右侧){ 节点温度={temp.SubNode->右侧,温度深度+1}; q、 推动(温度); } } }

C++ 控件到达非void函数的末尾[-Werror=返回类型](只是一个简单的判断) struct节点{ 树节点*子节点; 智力深度; }; int minDepth(TreeNode*root){ 队列q; if(root==NULL) 返回0; 节点cur={root,1}; q、 推(cur); 而(!q.empty()){ 节点温度=q.front(); q、 pop(); if(临时子节点->左==NULL和临时子节点->右==NULL) 返回温度深度; 如果(临时子节点->左){ 节点温度={temp.SubNode->左,温度深度+1}; q、 推动(温度); } if(临时子节点->右侧){ 节点温度={temp.SubNode->右侧,温度深度+1}; q、 推动(温度); } } },c++,return-type,C++,Return Type,代码是关于Leetcode的最小二叉树深度。 顺便问一下,这个错误是什么意思? 不退货? 但我有报税表。为什么显示这个错误 简短回答:minDepth()应该返回int,但如果while()循环结束,则不会返回int 您是否尝试将错误/警告消息放入您喜爱的搜索引擎?您(和编译器)不信任您的算法,因为while(!q.empty()。将其设置为while(true)@orbitcowboy关于textMate插件你有什么建议吗?@BaummitAugen我有。但是百度上没有合适的ans…。@Die

代码是关于Leetcode的最小二叉树深度。
顺便问一下,这个错误是什么意思?
不退货?

但我有报税表。为什么显示这个错误

简短回答:minDepth()应该返回int,但如果while()循环结束,则不会返回int

您是否尝试将错误/警告消息放入您喜爱的搜索引擎?您(和编译器)不信任您的算法,因为
while(!q.empty()
。将其设置为
while(true)
@orbitcowboy关于textMate插件你有什么建议吗?@BaummitAugen我有。但是百度上没有合适的ans…。@DieterLück这意味着它取决于编译器吗?如果我交换一个编译器。这会有所不同吗?我最后尝试添加了一个retrun。但是它也显示了错误。我不知道这种语法“node temp_uuuuuuuux={temp.SubNode->left,temp.depth+1};”也许像这样的语法“node temp_u=temp.SubNode->left;temp.depth+=1;”?temp_u是一个结构。所以“struct struct_name={submember1,submember2…,submembern};”可以工作。顺便说一句,我已经尝试过这种方法了。但是没有工作。
struct node{
    TreeNode *SubNode;
    int depth;
};
int minDepth(TreeNode* root){
    queue<node> q;
    if(root == NULL)
        return 0;
    node cur = {root, 1};
    q.push(cur);
    while(!q.empty()){
        node temp = q.front();
        q.pop();
        if(temp.SubNode->left == NULL && temp.SubNode->right == NULL)
            return temp.depth;
        if(temp.SubNode->left){
            node temp_ = {temp.SubNode->left, temp.depth+1};
            q.push(temp_);
        }
        if(temp.SubNode->right){
            node temp_ = {temp.SubNode->right, temp.depth+1};
            q.push(temp_);
        }
    }
}