建筑工程网 装修/网络优化的意义
剑指第二版第9题用栈创造出一个队
做题总结:
- 感觉剑指上面的题的难度都还算是比较人性化的,没有什么可以刁难人的意思.
class CQueue {Stack<Integer> inputStack;Stack<Integer> outputStack;int size;public CQueue() {this.size = 0;inputStack = new Stack();outputStack = new Stack();}public void appendTail(int value) {inputStack.push(value);size++;}public int deleteHead() {if (size == 0) {return -1;}//这里其实是需要思考一下的,因为这里是调用了两个栈,删除节点的时候,就是从头部开始的,必须对情况进行整合,如果出栈为null,就需要先往里面添加,则if (outputStack.isEmpty()) {while (!inputStack.isEmpty()) {outputStack.push(inputStack.pop());}}size--;return outputStack.pop();}
}