Java实现两种队列(数组和链表)

@date 2022-09-13 17:50
*/
public class QueueLinked{

private static class Node{
E item;
Node next;

private Node head; // 头指针
private Node tail; // 尾指针

public boolean enQueue (E e)
{
Node newNode = new Node<>(e,null);
// 尾部入队
if (tail == null){
// 初始化 尾指向新加入的元素
tail = newNode;
// 头指向尾
head = tail;
return true;
}
else{
// 如果初始化已经完成了 那么之后的元素就从尾部开始往后指
tail.next = newNode;
tail = newNode; // 尾指针的next要指向新结点 同时尾指针本身也要指向新结点
}
return true;
}
public E deQueue (){
if (head == null)
{
throw new RuntimeException(“队列为空!”);
}
E item = head.item;
head = head.next;
return item;
}

public static void main(String[] args) {
QueueLinked myLinkedQueue = new QueueLinked();
myLinkedQueue.enQueue(“11”);
myLinkedQueue.enQueue(“22”);

 System.out.println(myLinkedQueue.deQueue());
 System.out.println(myLinkedQueue.deQueue());
 System.out.println(myLinkedQueue.deQueue());

Original: https://www.cnblogs.com/rainbow-1/p/16690496.html
Author: 靠谱杨
Title: Java实现两种队列(数组和链表)

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/611567/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • OpenStack 发放云主机

    登陆网址 具体安装步骤欢迎参照我的博客:https://www.cnblogs.com/kongshuo/p/16618008.html用户名 admin 密码 redhat 创建…

    Linux 2023年6月8日
    0121
  • QLabel图片自适应

    故事背景:由于要做终端定制的需求,在服务端上传一张128像素的图片,下发给客户端,适配所有图标(界面左上角、任务栏、快捷方式、托盘等),但是由于每个位置的图标大小不一样,代码要根据…

    Linux 2023年6月13日
    089
  • Linux下 lsof 命令详解

    lsof 是 List Open File 的缩写, 它主要用来获取被进程打开文件的信息,我们都知道,在Linux中,一切皆文件,lsof命令可以查看所有已经打开了的文件,比如: …

    Linux 2023年6月13日
    0107
  • redis的 分布式锁 golang/erlang 简单实现

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% import (% “redigo/redis”% ) %…

    Linux 2023年5月28日
    0114
  • 从 Hadoop 到云原生, 大数据平台如何做存算分离

    Hadoop 的诞生改变了企业对数据的存储、处理和分析的过程,加速了大数据的发展,受到广泛的应用,给整个行业带来了变革意义的改变;随着云计算时代的到来, 存算分离的架构受到青睐,企…

    Linux 2023年6月14日
    061
  • 代码规范浅谈

    代码规范这东西网上很容易百度到一堆,除了天下文章一大抄的问题,另外,多数只给了结果,原因没有充分说明,或者非常的纠结于大写小写,一个函数可以写几行的细节。感觉有点容易让新人误入歧途…

    Linux 2023年6月13日
    0109
  • Redis源码学习

    为什么要阅读Redis源码? 主要原因就是『简洁』。如果你用源码编译过Redis,你会发现十分轻快,一步到位。其他语言的开发者可能不会了解这种痛,作为C/C++程序员,如果你源码编…

    Linux 2023年5月28日
    099
  • Kafka入门实战教程(8):常用的shell工具脚本

    1 Kafka提供的命令行脚本 Kafka默认提供了多个命令行脚本,用于实现各种各样的功能和运维管理。从2.2版本开始,提供了多达30+个Shell脚本。 今天我们来看一些其中比较…

    Linux 2023年5月28日
    0109
  • brew安装与启动redis

    安装 检查是否安装成功 启动 检查是否启动成功 参考 安装 brew install redis 检查是否安装成功 启动 brew services start redis &am…

    Linux 2023年6月6日
    0120
  • phpredis中文手册——《redis中文手册》 php版

    将值value关联到key,并将key的生存时间设为seconds(以秒为单位)。 这个命令类似于以下两个命令: O(1) SETRANGE SETRANGE key offset…

    Linux 2023年5月28日
    085
  • 阿里云ddns shell 脚本

    https://files-cdn.cnblogs.com/files/ahuo/aliyun-ddns.sh Original: https://www.cnblogs.com/…

    Linux 2023年5月28日
    0104
  • python动态网站爬虫实战(requests+xpath+demjson+redis)

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月7日
    0115
  • Supervisor进程管理

    Supervisor 介绍 Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它…

    Linux 2023年6月8日
    0119
  • 【socket】基于socket下进程上报温度

    fork()函数又叫计算机程序设计中的分叉函数,fork是一个很有意思的函数,它可以建立一个新进程,把当前的进程分为父进程和子进程,新进程称为子进程,而原进程称为父进程。fork调…

    Linux 2023年6月13日
    086
  • docker-部署jumpserver

    Docker 部署 jumpserver 堡垒机 容器部署 jumpserver-1.4.10 服务端 #最好单一个节点 容器运行Mysql 5.6.46 #myql , redi…

    Linux 2023年6月14日
    0103
  • k4t系统架构 & 部署最佳实践

    《kaiiit船长》 容器自动管理软件 (k4t,国产k8s) k4t系统架构 & 部署最佳实践 文档修订时间: 2021-11-20 关键词 : k4t kaiiit 船…

    Linux 2023年6月13日
    0113
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球