Fork me on GitHub

151. Reverse Words in a String

class Solution {
    	  public String reverseWords(String s) {
	     StringBuffer ans = new StringBuffer("");
	     StringBuffer res = new StringBuffer("");
	     for(int i = 0 ;i< s.length() ;i++) {
	    	 while(i< s.length()&&s.charAt(i)==' ')
	    		 i++;                //找到i所对应的字符不是" "
	    	 StringBuffer temp = new StringBuffer("");        //用stringBuffer 效率高 用string就超时了
	    	 while(i< s.length()&&s.charAt(i)!=' ') {
	    		 temp.insert(0, s.charAt(i)) ;
	    		 i++;
	    	 }
	    	 res.append( temp);res.append(" ");}
	    	 int x = res.length()-1;
	    	 while(x>= 0&&res.charAt(x)==' ') {                   //多加了几个空格 这里倒数找出非空格的位置 然后继续
	    		 x--;
	    	 }
	    	 while(x>= 0) {
	    		 ans.append(res.charAt(x));
	    		 x--;
	    	 }
	    	
	     return ans.toString();
	    }
	}

posted @ 2019-08-07 23:46  cznczai  阅读(70)  评论(0编辑  收藏  举报