微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

运行时错误:将无符号偏移量添加到0x602000000390溢出到0x60200000038c

如何解决运行时错误:将无符号偏移量添加到0x602000000390溢出到0x60200000038c

我正在解决一个名为的问题。在排序数组中查找元素的第一个和最后一个位置 '''

void bin_search(vector<int>&nums,int target,int l,int  h,int &a,int &b)
{
   if(l>h)
       return;

   int  mid= l + (h - l) / 2;

if(nums[mid]==target)
{
   
    if(nums[mid-1]==target)
    {
     
    bin_search(nums,target,l,mid-1,a,b);
    }
    else
    {
        a=mid;
    }

     if(nums[mid+1]==target)
    {
     
    bin_search(nums,mid+1,h,b);
    }
    else 
    {
        b=mid;
    }
   
}
else if(nums[mid]<target)
{
bin_search(nums,b);

}
else 
{
     bin_search(nums,b);
}
}

class Solution {
public:
    vector<int> searchRange(vector<int>& nums,int target) {
        
        int a=-1;
        int b=-1;
        int l=0;
        int h=nums.size()-1;
        bin_search(nums,b);
        
        return {a,b};
    }
};

''' 这是我提交的代码,但我正在 行1034:字符34:运行时错误:将无符号偏移添加到0x602000000390溢出到0x60200000038c(stl_vector.h) 摘要:UndefinedBehaviorSanitizer:未定义行为/usr/bin/../lib/gcc/x86_64-linux-gnu/10/../../../../include/c++/10/bits/stl_vector.h :1043:34 错误,我能够通过我的编译器和其他ID中的所有测试用例,但无法解决错误 请提前帮助我

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。