反转单词顺序
翻转单词顺序列
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();//转换成字符串 } }