我以前发现此代码是在进行字符串反转时递归的,但是我不明白该代码的工作方式,我能否得到一些解释?谢谢!
std::string reverse(std::string str) { if(str.length()==0) return ""; return reverse(str.substr(1)) + str[0]; }
我怀疑您可以在下图中找到说明。
想象您有字符串“ abcdab”。