创建我自己的Deque接口和Deque类

时间:2016-01-20 01:22:50

标签: java interface queue deque

所以我创建了一个Deque界面,但我不确定如何实例化我的Deque,我想使用ArrayDeque,但我相信ArrayDeque是另一个界面,而且我'我试图使用自己的界面。

public interface DequeInterface {
 public void addFront(Object o);
 public void addRead(Object o);
 public Object removeFront();
 public Object removeRear();

}

public class Deque implements DequeInterface {

}

1 个答案:

答案 0 :(得分:0)

来自评论:

  

他们不需要在方法中具体实现,只是粗略概述了我会做什么。

假设你想使用循环缓冲区实现(参见Wikipedia),这是一个开始:

public class Deque implements DequeInterface {
    private Object[] array;
    private int      frontIndex;
    private Object[] rearIndex;
    public Deque() {
        // Allocate array of 100
        // Initialize front index and rear index
    }
    public void addFront(Object o) {
        if (array full) {
            // Increase array size
        }
        array[frontIndex--] = o;
        // Handle frontIndex circling around
    }
    public void addRead(Object o) {
        // TODO
    }
    public Object removeFront() {
        // TODO
    }
    public Object removeRear() {
        // TODO
    }
}

当然,如果您选择使用链接列表实现,那么该大纲将会有所不同。或多个子阵列。或其他实施。