这两天在复习基础算法。哎呀,重新再看看 就是感觉不一样。收获挺大的。以前看着在论坛中有字符倒序的题,拿栈去实现,这效果真妙。 刚看到栈,就写了一个。 /**用栈来实现字符倒序 * @author Beacher.Ma */ public class CharStackTest { public static void main(String[] args) { String str="ilovejava"; char[]chars=str.toCharArray(); CharStack cs=new CharStack(str.length()); for(char c:chars){ cs.push(c); } while(!cs.isEmpty()){ System.out.print(cs.pop()+" "); } } } class CharStack{ private int size; private char[] chars; private int top; public CharStack(int size){ this.size=size; chars=new char[size]; top=-1; } public void push(char c){ if(!isFull()){ chars[++top]=c; }else{ throw new RuntimeException(" Stack Full!"); } } public char pop(){ if(!isEmpty()){ return chars[top--]; }else{ throw new RuntimeException("Stack Empty!"); } } public boolean isEmpty(){ return top==-1?true:false; } public boolean isFull(){ return top==size-1?true:false; } }