541. 反转字符串 II

541. 反转字符串 II
就是加了点规则,遵守规则就行了
这道题目其实也是模拟,实现题目中规定的反转规则就可以了。
所以当需要固定规律一段一段去处理字符串的时候,要想想在在for循环的表达式上做做文章。
代码1
在这里插入图片描述

代码2

在这里插入图片描述

代码2的一些解释
在这里插入图片描述

时间复杂度:O(n)
空间复杂度:O(n),因为JAVA字符串是不可修改的,所以需要使用O(n)的空间将字符串临时转换为可修改的数据结构,(例如char数组)

代码1和2的区别:
1,代码1 使用continue,可以直接结束本次循环,进入下一次循环
2,字符数组转字符串,方式不同
说明:
1,边界值的确定方法,举个实际例子,
最好用的例子:0,1,2,3,4
2,关于下面的那个i<j,反过来想,如果i不小于j,那么就是等于呗,等于,肯定不会换了呀
3,一般调用的库函数,对于数据的边界都是左闭右开原则,当然自己实现, 可以自己定义规则
4,代码,只要能模拟出来就行,不用太讲究代码是如何写出来的

在这里插入图片描述
在这里插入图片描述

参考链接:
字符串操作进阶! | LeetCode:541. 反转字符串II
【彤哥来刷题啦】模拟 & 100%,简单题如何做到代码优雅!
Java 位运算符(操作符) &、&&、|、||、^、<<
时空复杂度参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值