深圳幻海软件技术有限公司 欢迎您!

  • 数据结构—循环队列(环形队列)

    循环队列(环形队列)循环队列的概念及结构循环队列的实现循环队列的概念及结构循环队列是一种线性数据结构,其操作表现基于FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就

  • 「Java数据结构」手撕数组队列及环形数组队列。

    目录一、队列1、基本介绍2、示意图3、队列的特点二、数组模拟队列1、数组队列初始化2、判断方法3、增删改查的方法4、注意三、数组模拟环形队列1、初始化2、判断方法3、增删改查的方法一、队列1、基本介绍     队列是一种特殊的线性表,特殊之处在于它只

  • 数据结构之栈、队列——算法与数据结构入门笔记(四)

    本文是算法与数据结构的学习笔记第四篇,将持续更新,欢迎小伙伴们阅读学习。有不懂的或错误的地方,欢迎交流栈栈是一种线性数据结构,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶(Top),另一端称为栈底(Bottom)。栈中的数据元素遵守后进先出LIFO(LastInF

  • 数据结构--》深入了解栈和队列,让算法更加高效

            本文将带你深入了解数据结构栈和队列,这两种基础的线性数据结构在算法中的重要性不言而喻。我们将会详细介绍栈和队列的概念、分类、实现以及应用场景,在理解栈和队列的基础上,还将探讨如何通过栈和队列来高效地解决算

  • leetcode刷题(6)

    各位朋友们大家好,今天是我的leetcode刷题系列的第六篇。这篇文章将与队列方面的知识相关,因为这些知识用C语言实现较为复杂,所以我们就只使用Java来实现。文章目录设计循环队列题目要求用例输入提示做题思路代码实现用栈实现队列题目要求用例输入提示做题思路代码实现用队列实现栈题目要求用例输入做题思路

  • 多核分布式队列的实现:“偷”与“自私”的运用(4)

    >6.CDistributedQueue源代码在设计CDistributeQueue类时,通常有两种方案值得考虑:1、本地队列预先创建好,当有线程访问时就可以直接根据线程编号去访问对应的本地队列。2、不预先创建本地队列,当线程第一次访问分布式队列时,由于获取不到线程编号,由此可以断定本线程是第1次访

  • 多核分布式队列的实现:“偷”与“自私”的运用(1)

    >多核分布式队列的实现:"偷"与"自私"的运用在讨论本文的正题前,不得不先说一些闲话,嫌哆嗦者可以跳过"前言"部分不读。1.前言在发表了"老子是伟大的多核计算科学家"(链接: [url]http://blog.csdn.net/drzhouweiming/archive/2008/11/0

  • RocketMQ消息短暂而又精彩的一生

    大家好,我是三友~~这篇文章我准备来聊一聊RocketMQ消息的一生。不知你是否跟我一样,在使用RocketMQ的时候也有很多的疑惑:消息是如何发送的,队列是如何选择的?消息是如何存储的,是如何保证读写的高性能?RocketMQ是如何实现消息的快速查找的?RocketMQ是如何实现高可用的?消息是在

  • 重大发现,AQS加锁机制竟然跟Synchronized有惊人的相似

    在并发多线程的情况下,为了保证数据安全性,一般我们会对数据进行加锁,通常使用Synchronized或者ReentrantLock同步锁。Synchronized是基于JVM实现,而ReentrantLock是基于Java代码层面实现的,底层是继承的AQS。AQS全称**AbstractQueued

  • 事件循环机制:JavaScript被设计为单线程,那如何做到异步的呢?

    JavaScript是单线程的语言,单线程是指所有的程序路径按照一定的顺序执行,只有前面的程序执行了,后面的程序才会执行。也就是说在同一时间,JavaScript只能做一件事情,为了协调浏览器产生的各种事件、网络处理、前端渲染等行为,js的事件循环机制,即EventLoop应运而生。JavaScri

  • RocketMQ消息丢失如何排查?

    消息丢失如何排查?当我们在使用mq的时候,经常会遇到消息消费异常的问题,原因有很多种,比如:producer发送失败consumer消费异常consumer根本就没收到消息「那么我们该如何排查了?」其实借助RocketMQ-Dashboard就能高效的排查,里面有很多你想象不到的功能。首先我们先查找

  • 偏僻又热门,引用与引用队列

    引用和引用指向的对象Areferenceobject(引用,我感觉这个不如直接写成reference更容易理解)isalayerofindirectionbetweenyourprogramcodeandsomeotherobject,calledareferent(引用指向的对象).Eachref

  • 面试突击:说一下线程池七个参数的含义?

    所谓的线程池的7大参数是指,在使用ThreadPoolExecutor创建线程池时所设置的7个参数,如以下源码所示:复制publicThreadPoolExecutor(intcorePoolSize,intmaximumPoolSize,longkeepAliveTime,TimeUnitunit

  • Redis 使用 List 实现消息队列的利与弊

     分布式系统中必备的一个中间件就是消息队列,通过消息队列我们能对服务间进行异步解耦、流量消峰、实现最终一致性。目前市面上已经有RabbitMQ、RochetMQ、ActiveMQ、Kafka等,有人会问:“Redis适合做消息队列么?”在回答这个问题之前,我们先从本质思考:消息队列提供了什

  • 一口气说出 6种 延时队列的实现方法,面试官也得服

     五一期间原计划是写两篇文章,看一本技术类书籍,结果这五天由于自律性过于差,禁不住各种诱惑,我连电脑都没打开过,计划完美宣告失败。所以在这能看出和大佬之间的差距,人家没白没夜的更文,比你优秀的人比你更努力,难以望其项背,真是让我自愧不如。知耻而后勇,这不逼着自己又学起来了,个人比较喜欢一些

  • 别再找了,一文彻底解析Java 中的弱引用

    概览本文会通过对弱引用的定义讲起,然后通过案例的使用一步一步的深入源码进行分析其原理,从而让读者深刻的理解什么是弱引用,如何使用弱引用,什么场景下会使用弱引用,弱引用可以解决什么样的问题,以及它的源码实现是怎样的,其中会涉及的内存溢出,垃圾回收原理作用:jdk官网解释:弱引用主要应用在不阻止它的ke

  • 常用消息中间件17个维度全方位对比

     本文介绍了Kafka、RabbitMQ、ZeroMQ、RocketMQ、ActiveMQ17个方面综合对比作为消息队列使用时的差异。一资料文档Kafka:中。有kafka作者自己写的书,网上资料也有一些。rabbitmq:多。有一些不错的书,网上资料多。zeromq:少。没有专门写zer

  • 消息中间件这么多,到底应该如何选型?

    消息队列已经逐渐成为企业应用系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能。图片来自Pexels当前使用较多的消息队列有RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ、MetaMQ等,而部分数据库如Redis、MySQL以及Ph

  • 一个天天用消息队列的人,不知道为啥用 MQ,这就有点尴尬

     1、为什么要使用消息队列?分析:一个用消息队列的人,不知道为啥用,有点尴尬。没有复习这点,很容易被问蒙,然后就开始胡扯了。回答:这个问题,咱只答三个最主要的应用场景(不可否认还有其他的,但是只答三个主要的),即以下六个字:解耦、异步、削峰(1)解耦传统模式:  传统模

  • 秒杀系统必须考虑的3个技术问题!

    1、并发队列的选择Java的并发包提供了三个常用的并发队列实现,分别是:ArrayBlockingQueue、ConcurrentLinkedQueue和LinkedBlockingQueue。ArrayBlockingQueue是初始容量固定的阻塞队列,我们可以用来作为数据库模块成功竞拍的队列,比

推荐阅读