关于";反向字符串";在leetcode中
About the solution for "reverse-string" in leetcode
https://leetcode.com/problems/reverse-string/
这是我的解决方案:
class Solution {
public:
string reverseString(string s) {
// if(s.size() == 0 || s.size() == 1)
// return s;
string::size_type i = 0;
string::size_type j = s.size() - 1;
while (i < j)
{
char temp = s[i];
s[i] = s[j];
s[j] = temp;
i++;
j--;
}
return s;
}
};
但这个解决方案没有通过。当我取消对这两行的注释时:if(s.size() == 0 || s.size() == 1) return s;
,代码通过。我很困惑,我认为这两行代码是相等的。
当长度为0时,您可以获得越界访问(j变为一个大数字,因为它是无符号的(。
长度为1的案例应该可以安全地保留评论。
相关文章:
- 为什么我在leetcode上收到AddressSanitizer:地址0x602000000058上的堆缓冲区溢出错误
- 在 leetcode 上提交解决方案时出现堆栈缓冲区溢出错误
- LeetCode 1:两和 - 地址清理器:堆缓冲区溢出地址
- LeetCode 1011.Binary Search,C++和Python的想法相同,但输出不同
- 返回 str vs. str.substr(0,str.size()) 在 leetcode 中给了我不同的输出
- 尝试从头开始实现Leetcode的FizzBuzz多线程问题。收到"libc++abi.dylib: terminating"错误
- 二叉树级别顺序遍历在leetcode中
- LeetCode 删除 c++ 中的重复项
- Leetcode 1366:堆缓冲区溢出
- C++ LeetCode #377 的 DP 解决方案中,此代码是否有错误?
- Leetcode 540 上的运行时错误.排序数组中的单个元素
- 运行时错误地址清理器:LEETCODE 中的致命信号
- Leetcode 297 序列化和反序列化二叉树
- Leetcode C++用于循环条件
- 我在LeetCode练习时遇到了一些奇怪的错误
- 'char (*RtlpNumberOf(T (&)[N]))[N]':无法从"char *"
- Arduino IDE 错误 - 无法找到数字文字运算符"运算符""f900ff"
- 我不明白关于 LeetCode 上的格雷码的解决方案
- DFS + 记忆解决方案在 LeetCode 上获取 TLE
- "inline"、"constexpr"或"noexcept"