单词前后位置颠倒,大小写颠倒

简介: 单词前后位置颠倒,大小写颠倒

题目:

输入:一个字符串(由字母空格组成),一个长度

输出:将所有单词前后位置颠倒,大小写颠倒

例如:

输入:

This is a sample,16

输出:

SAMPLE A IS tHIS

public String trans(String s,int n) {
        //处理全部是空格的情况
        if(s.trim().length() == 0) return s;
        s = s.substring(0,n);       //校准s长度
        if(s.length() ==0) return s;//处理长度为0
        StringBuilder sb = new StringBuilder();
        s = changeStr(s); //大小写反转
        /*
         * 截取末单词置首
         */
        for (int i = s.length()-1; i >= 0; i--) {
            if(s.charAt(i)==' '){
                String str = s.substring(i+1);
                sb.append(str+" ");
                s=s.substring(0,i);
            }
        }
        sb.append(s);
        return sb.toString();
    }
    //大小写反转类
    public String changeStr(String s) {
        StringBuilder sb = new StringBuilder();
        for (char c : s.toCharArray()) {
            if (c <= 'z' && c >= 'a') {
                c = Character.toUpperCase(c);
            } else if (c <= 'Z' && c >= 'A') {
                c = Character.toLowerCase(c);
            }
            sb.append(c);
        }
        return sb.toString();
    }
相关文章
|
1月前
|
测试技术
leetcode-1592:重新排列单词间的空格
leetcode-1592:重新排列单词间的空格
29 0
|
8月前
|
索引
【LeetCode】917. 仅仅反转字母、387. 字符串中的第一个唯一字符
目录 917. 仅仅反转字母 387. 字符串中的第一个唯一字符
29 0
|
1月前
leetcode-2000:反转单词前缀
leetcode-2000:反转单词前缀
33 0
leetcode-2000:反转单词前缀
|
7月前
倒置字符串(倒置单词,标点不倒置)
倒置字符串(倒置单词,标点不倒置)
34 0
|
8月前
【Leetcode -844.比较含退格的字符串 -1047.删除字符串中的所有相邻重复项】
【Leetcode -844.比较含退格的字符串 -1047.删除字符串中的所有相邻重复项】
36 0
|
9月前
逆序一个字符串的每一组单词(不是倒叙)
整体思路: 1.先将整个字符串倒叙:i like china.->.anihc ekil i 2.将倒叙后的每一块单词再倒叙:.anihc->china. 想必大家都发现了,倒叙整个字符串和倒叙每一块是一样的,那么我们不妨写一个倒叙的函数在这里用reserve表示!
49 0
|
Python
字符串首尾空格去除问题
字符串首尾空格去除问题
81 0
LeetCode 5867. 反转单词前缀
给你一个下标从 0 开始的字符串 word 和一个字符 ch 。找出 ch 第一次出现的下标 i ,反转 word 中从下标 0 开始、直到下标 i 结束(含下标 i )的那段字符。
66 0
|
存储 算法
算法:编程在一个已知的字符串中查找最长单词,假定字符串中只包含字母和空格,空格用来分隔不同单词
算法:编程在一个已知的字符串中查找最长单词,假定字符串中只包含字母和空格,空格用来分隔不同单词
在一个由小写英文字母(a-z)组成的字符串中,查找最长子串,其头尾字母相同,且中间不包含该头尾字母,并输出最左边的该类子串
在一个由小写英文字母(a-z)组成的字符串中,查找最长子串,其头尾字母相同,且中间不包含该头尾字母,并输出最左边的该类子串
142 0