标签:
单词逆序问题思路很简单,一个输入字符串,入栈,然后一个出栈追加到一个StringBuilder中,转化为输出字符串。
1 public class Reverse { 2 public static void main(String[] args) { 3 String inputStr = "jintianshiyigehaorizi"; 4 String outputStr = reverse(inputStr); 5 System.out.println(outputStr);// iziroahegiyihsnaitnij 6 } 7 8 public static String reverse(String inputStr) { 9 // 用来存储输出字符串(StringBuilder线程不安全,速度快;StringBuffer线程安全) 10 StringBuilder outputStr = new StringBuilder(); 11 // 定义一个链表用来当做栈使用 12 LinkedList<Character> stack = new LinkedList<Character>(); 13 int len = inputStr.length(); 14 // 循环入栈,存储字符串内容 15 for (int i = 0; i < len; i++) { 16 stack.push(inputStr.charAt(i)); 17 } 18 // 栈不为空时不断出栈,追加到输出字符串中 19 while (!stack.isEmpty()) { 20 outputStr.append(stack.pop()); 21 } 22 return outputStr.toString(); 23 } 24 }
标签:
原文地址:http://www.cnblogs.com/yuegu/p/Reverse.html