java小程序之单词逆序

单词逆序问题思路很简单,一个输入字符串,入栈,然后一个出栈追加到一个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 }
Reverse.class

 

posted @ 2016-03-26 17:28  古 月  阅读(306)  评论(0编辑  收藏  举报