"LeetCode每日一题高频面试算法题目1:队列实现栈"

需积分: 0 1 下载量 56 浏览量 更新于2023-12-27 1 收藏 4.3MB PDF 举报
eue.isEmpty()){             return null;         }         while(queue.size() > 1){             help.add(queue.poll());         }         Integer result = queue.poll();         swap();         return result;     }     /**       * @Description: 获取栈顶元素     */     public Integer peek(){         if(queue.isEmpty()){             return null;         }         while(queue.size() > 1){             help.add(queue.poll());         }         Integer result = queue.poll();         help.add(result);         swap();         return result;     }     /**       * @Description: swap交换指针     */     private void swap(){         Queue<Integer> temp = queue;         queue = help;         help = temp;     } } LeetCode每日一题高频面试算法题目1要求使用队列实现栈,实现push、pop、peek、isEmpty方法。这里使用两个队列queue和help进行实现。push操作向队列中添加元素,pop操作实现弹栈,并将队列中的元素迁移至help队列最后返回。peek操作返回栈顶元素,isEmpty操作判断栈是否为空。这样就实现了使用队列实现栈的功能。 总的来说,这是一道使用队列实现栈的高频面试算法题目,需要熟练掌握队列和栈的操作特点,并且能够灵活运用队列实现栈的功能。通过不断练习和思考,能够熟练掌握并解决类似的题目。 LeetCode每日一题高频面试算法题目1中的队列实现栈,为算法学习者提供了一个很好的训练机会。