手写一个队列

队列具有先进先出的特点,从队尾添加元素,从队首删除元素。对于队列,通常有两种实现方式:数组和链表。1 利用数组来实现队列利用两个指针font,rear分别指向队列的头部与尾部 为了能够有效利用数组空间,采用循环队列的方式去实现。 入队时,元素添加到rear指针处,然后real指针后移一位 出队时,删除并返回font指针所指元素,然后font指针后移一位 入队时,需要判断...
摘要由CSDN通过智能技术生成

队列具有先进先出的特点,从队尾添加元素,从队首删除元素。对于队列,通常有两种实现方式:数组和链表。

1 利用数组来实现队列 

  • 利用两个指针font,rear分别指向队列的头部与尾部
  • 为了能够有效利用数组空间,采用循环队列的方式去实现。
  • 入队时,元素添加到rear指针处,然后real指针后移一位
  • 出队时,删除并返回font指针所指元素,然后font指针后移一位
  • 入队时,需要判断队列是否已满
  • 出队时,需要判断队列是否为空。 
  • 为了判断队列为空或者已满的情况,通常有两种方式:
    • 1、利用一个变量size来记录队列实际元素的个数
    • 2、将数组空出一位来区分满和空情形
package basicKnowledge.集合框架.queue;

/**
 * @基本功能:利用数组实现一个循环队列
 * @program:summary
 * @author:peicc
 * @create:2019-07-24 10:11:06
 **/
public class MyArrayQueue<E> {
    private int size;//队列元素个数
    private int length;//数组实际长度
    private in
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值