试题
考点

数据结构-字符串-字符串匹配

面5笔5

字符串反转, 如“abcdefg”变为“gfedcba”,要求空间复杂度为O(1), 时间复杂度尽量低

前往“校招VIP”小程序,刷题更快
最新校招难题刷题,快来进刷题群吧
解答

思路:

1.交换的两个指针不方便作为递归参数;

2.换个替换方案,用char数组来实现,用left ,right 两个指标指示位置;

3.递归需要有终结态,当left > = right, 反转完成。

核心代码
void reverse( const char[] s, int left, int right )
{
if(left >= right)
return;

char t = s[left] ;
s[left] = s[right] ;
s[right] = t ;

reverse(s, left + 1, right - 1) ;
}


评论

杜行知

2021-09-12 13:15:00

0 0

加载更多