[LeetCode专题] 2000. 反转单词前缀

2000. 反转单词前缀
给你一个下标从 0 开始的字符串 word 和一个字符 ch 。找出 ch 第一次出现的下标 i ,反转 word 中从下标 0 开始、直到下标 i 结束(含下标 i )的那段字符。如果 word 中不存在字符 ch ,则无需进行任何操作。
例如,如果 word = “abcdefd” 且 ch = “d” ,那么你应该 反转 从下标 0 开始、直到下标 3 结束(含下标 3 )。结果字符串将会是 “dcbaefd” 。
返回 结果字符串 。

示例:
输入:word = “abcdefd”, ch = “d”
输出:“dcbaefd”
解释:“d” 第一次出现在下标 3 。
反转从下标 0 到下标 3(含下标 3)的这段字符,结果字符串是 “dcbaefd” 。

class Solution {
    public String reversePrefix(String word, char ch) {
        boolean flag=false;
        int first=0;
        for(int i=0;i<word.length();i++)
        {
            if(word.charAt(i)==ch)
            {
                flag=true;
                first=i;
                break;
            }
        }
        if(flag){
        return new StringBuffer(word.substring(0,first+1)).reverse().toString()+word.substring(first+1);
        }
        return word;
    }
}

补充知识:
字符串反转方式

1.利用字符串的拼接(charAt()方法),把后遍历出来的放在前面即可实现反转(reverse=s.charAt(i)+reverse)
2.利用字符串你的拼接(toCharArray()处理成字符数组的方法),把后遍历出来的放在前面即可实现反转
3.利用StringBuffer的reverse()方法
4.利用递归的方法,类似二分查找的折半思想
字符串转数组
1.利用string.split("")转换为字符串数组
数组转字符串
1.org.apache.commons.lang3.StringUtils包 String str4 = StringUtils.join(arr, “,”)
2.org.apache.commons.lang3.ArrayUtils包 ArrayUtils.toString(arr, “,”) 数组转字符串

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值