反转单词顺序

翻转单词顺序列

http://www.nowcoder.com/questionTerminal/3194a4f4cf814f63919d0790578d51f3

反转单词顺序
利用栈的特性进行处理。

import java.util.*;
public class Solution {
    public String ReverseSentence(String str) {
        Stack<String> stack = new Stack<String>();
        String []strings = (str+" end").split(" ");//添加" end"来处理空格字符串结尾情况
        for(int i=0;i<strings.length-1;i++){//最后的end不用入栈
            stack.push(strings[i]);
        }
        //使用StringBuilder进行字符串拼接,减少内存消耗
        StringBuilder builder = new StringBuilder();
        while(stack.size()>0){
            builder.append(stack.pop());
            if(stack.size()>0)//除了最后一个单词,其他都要添加空格隔开
                builder.append(" ");
        }
        return builder.toString();//转换成字符串
    }
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-25 17:26
点赞 评论 收藏
分享
06-03 12:12
门头沟学院 Java
JamesGosli...:odoo就是💩
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务