【ZJOF】用來個棧來實現一個佇列

阿爾法貓發表於2018-08-14

題目:用兩個棧實現一個佇列。佇列的宣告如下,請實現它的兩個函式appendTail 和deleteHead,
分別完成在佇列尾部插入結點和在佇列頭部刪除結點的功能
public class NList<T>{
    private Stack<T> stack1=new Stack<>();
    private Stack<T> stack2=new Stack<>();

    public void appendTail(T value){
        stack1.add(value);
    }

    public T deleteTail() throws Exception {
        if (stack2.isEmpty()){
            if (stack1.isEmpty()){
                throw new Exception("the queue is no element");
            }else {
                for (T element:stack1){
                    stack2.add(element);
                }
            }
        }
        return stack2.pop();
    }
}
複製程式碼


相關文章