实现底层的Deque和Queue在解决实际问题是用什么实现

实现底层的Deque和Queue在解决实际问题是用什么实现

老师咱们实现底层的Deque和Queue都是用数组实现的,但是在力扣评论区我看到是Deque  que = new Linklist();,所以双端队列和Queue是在解决实际问题或者做题时,是应该new一个什么对象?


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
liuyubobobo 2021-07-09 15:17:55

课程后续讲到链表的时候,我们也会使用链表实现队列。


在做题的时候,使用 LinkedList 实现没有问题。


继续加油!:)

  • 提问者 慕码人3031756 #1
    class MyStack {

    /** Initialize your data structure here. */
    private Queue<Integer> Queue1;

    public MyStack() {
    Queue1 = new LinkedList<Integer>();
    }

    /** Push element x onto stack. */
    public void push(int x) {
    Queue1.add(x);
    }

    /** Removes the element on top of the stack and returns that element. */
    public int pop() {
    return Queue1.removeLast(); //这里为什么会报错。是因为LinkedList不提供removeLast()这个接口吗,可是咱们上课时候都实现过

    }

    /** Get the top element. */
    public int top() {
    int b = pop ();
    push(b);
    return b;
    }

    /** Returns whether the stack is empty. */
    public boolean empty() {
    return Queue1.isEmpty();
    }
    }

    注释的位置为什么会报错


    2021-07-09 19:44:56
  • liuyubobobo 回复 提问者 慕码人3031756 #2

    报的什么错?请新开一个问题描述你的新问题。

    2021-07-12 14:53:58
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
算法与数据结构
  • 参与学习       2589    人
  • 解答问题       1090    个

慕课网算法名师Liuyubobobo,5年集大成之作 从0到工作5年,算法与数据结构系统解决方案

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师