当前位置: 代码迷 >> 综合 >> 剑指 Offer 58 - I. 翻转单词顺序--主站 151 题
  详细解决方案

剑指 Offer 58 - I. 翻转单词顺序--主站 151 题

热度:67   发布时间:2024-02-05 19:14:09.0

方法
算法思想:去除空格,双指针i先走,j再上来,然后保存
时间复杂度: O(N)
空间复杂度:O(N)
边界条件:
补充知识:各种length,双判i

class Solution {

    public String reverseWords(String s) {

        s=s.trim();   

        int j=s.length()-1,i=j;         //字符串的lengh(),数组的length

        StringBuilder res=new StringBuilder();

        while(i>=0){

            while(i>=0&&s.charAt(i)!='  ') i--;  

            res.append(s.substring(i+1,j+1)+'  ');//左闭右开substring

            while(i>=0&&s.charAt(i)=='  ') i--;

            j=i;

        }

        return res.toString().trim();//toString方法

      

    }

}

  相关解决方案