美文网首页
栈(Stack)与队列(Queue)

栈(Stack)与队列(Queue)

作者: qil231 | 来源:发表于2017-08-03 19:42 被阅读0次

    栈和队列也是比较常见的数据结构,它们是比较特殊的线性表,因为对于栈来说,访问、插入和删除元素只能在栈顶进行,对于队列来说,元素只能从队列尾插入,从队列头访问和删除。

    对栈的基本操作有push(进栈)和pop(出栈),前者相当于插入,后者相当于删除最后一个元素。栈有时又叫作LIFO(Last In First Out)表,即后进先出。

    队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。

    //利用LinkedList来实现队列类
    public class MyQueue<E> {
      private LinkedList<E> list = new LinkedList<>();
    
      //入队
      public void enqueue(E e) {
        list.addLast(e);
      }
    
      //出队
      public E dequeue() {
        return list.removeFirst();
      }
    }
    

    相关文章

      网友评论

          本文标题:栈(Stack)与队列(Queue)

          本文链接:https://www.haomeiwen.com/subject/qhfmlxtx.html