自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 收藏
  • 关注

原创 Jedis 原生之道:Redis 命令 Java 实现指南(二)

Hi~!这里是奋斗的明志,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~📚本系列文章为个人学习笔记,在这里撰写成文一为巩固知识,二为展示我的学习过程及理解。文笔、排版拙劣,望见谅。

2025-07-05 18:08:11 895

原创 Jedis 原生之道:Redis 命令 Java 实现指南(一)

本文介绍了如何在Windows开发机上通过SSH端口转发访问Linux云服务器的Redis数据库。

2025-07-04 10:42:01 683

原创 ACM模式用Scanner和System.out超时的解决方案和原理

Java 在处理 IO 的时候,有两套标准:字节流(System.in)字符流(带 Reader 或者 Writer)// 写代码class Read // 自定义快速读入// 字符串分割器// 缓冲读取器// 核心方法:获取下一个输入片段while(!

2025-05-16 21:30:37 992

原创 【Java基础】为什么不支持多重继承?方法重载和方法重写之间区别、Exception 和 Error 区别?

Java 通过禁止类的多继承避免了菱形问题和状态冲突,而接口的多实现通过以下机制保证安全:接口方法由实现类统一实现(消除方法歧义)。默认方法冲突需显式解决(开发者控制逻辑)。接口不涉及状态管理(避免字段冲突)。这种设计在保证语言简洁性的同时,提供了高度的灵活性,符合“单一继承,多重接口”的面向对象设计原则。

2025-02-09 21:11:18 711 5

原创 【Java基础】序列化、反序列化和不可变类

不可变类 是指在创建后其状态(对象的字段)无法被修改的类。一旦对系被创建,它的所有属性都不能被修改。也就是说,对象的所有成员变量在初始化后就不能被修改,无论是通过外部方法还是内部方法。这种类的实例整个生命周期内保持不变。

2025-02-08 23:54:27 1460 32

原创 RabbitMQ 工作模式使用案例之(发布订阅模式、路由模式、通配符模式)

发布订阅模式、路由模式、通配符模式

2024-12-15 17:51:06 4132 65

原创 RabbitMQ Work Queues (工作队列模式) 使用案例

工作队列模式

2024-12-14 21:14:46 5012 66

原创 信使之舞 之 RabbitMQ 7种工作模式概述

RabbitMQ 共提供了7种工作模式, 进行消息传递。

2024-12-13 10:00:00 1755 93

原创 默契之舞 之 生产者消费者模式(RabbitMQ)

默契之舞:形容生产者和消费者之间默契的配合,仿佛在跳一场没有言语的舞蹈,优雅而流畅,暗合彼此的节奏。

2024-12-12 10:00:00 4700 85

原创 信使之舞 之 RabbitMQ 核心概念

RabbitMQ的每一环节都如同一位舞者,协调一致地进行着信息的流转与传递。每一次消息的产生与消费,都是技术与艺术的完美融合,推动着现代分布式系统在这一舞台上翩翩起舞。

2024-12-11 10:00:00 7082 87

原创 Ubuntu 环境安装 之 RabbitMQ 快速入手

Rabbit, 兔子的意思互联网行业很多公司, 都喜欢用动物命名产品, 或者作为公司的logo, 吉祥物. 比如: 腾讯的企鹅, 京东的狗, 美团的袋鼠, 携程的海豚,阿里就更多了, 蚂蚁, 飞猪,天猫,菜鸟, 闲鱼, 盒马… 更是以一己之力, 组建了一个动物园…Rabbit也是⼀个公司名.消息队列 的意思 ,RabbitMQ是Rabbit企业下的⼀个消息队列产品.RabbitMQ是⼀个实现了AMQP的消息队列服务,是当前主流的消息中间件之⼀

2024-12-10 10:00:00 5741 98

原创 Redis Java 集成到 Spring Boot

Redis Java 集成到 Spring Boot(基本练习)

2024-12-09 14:59:35 12342 98

原创 【力扣】—— 二叉树的前序遍历、字典序最小回文串

力扣每日一刷

2024-12-03 20:28:56 1197 23

原创 【Redis初阶】Zset 有序集合

Zset有序集合讲解

2024-12-01 22:49:05 9887 66

原创 【Redis初阶】Set 集合

集合类型也是保存多个字符串类型的元素的,但和列表类型不同的是1)set集合中元素之间是无序的(这里的无序是和前面 list 的有序是对应的有序:顺序很重要,变换一下顺序,就是不同的list无序:顺序不重要,变换一下顺序,集合还是呢个集合)2)元素不允许重复(唯一的),如图所示。一个集合中最多可以存储 2 ^32 - 1 个元素。Redis 除了支持集合内的增删查改操作,同时还⽀持多个集合取交集、并集、差集,合理地使用好集合类型,能在实际开发中解决很多问题。

2024-11-30 13:42:05 1330 14

原创 【多线程基础】Java线程的六种状态

Java线程的六种状态

2024-08-24 09:00:00 1298 4

原创 【多线程基础】Thread类的基本用法

Thread类基本用法

2024-08-23 11:56:48 1342 2

原创 【数据结构】Map和Set(Java实现)

Map/Set 及实际实现类 HashMap/TreeMap/HashSet/TreeSet 的使用HashMap 和 HashSet 背后的数据结构哈希表的原理和简单实现

2024-08-11 22:36:56 1936 19

原创 【多线程基础】创建线程的五种方式、实现多线程数组求和

多线程代码,线程,本身是操作系统提供的,操作系统提供了 API 让我们操作线程,JVM 就对 操作系统 API 进行了封装线程,这里,提供了 Thread类,表示线程。

2024-08-11 21:17:12 1272 6

原创 【多线程基础】进程和线程的区别和联系(重要)

前面我们了解过进程的概念:一个程序运行起来,就会对应一个进程,进程也是系统分配资源的基本单位。而线程是 CPU 调度的基本单位

2024-08-10 14:03:57 1224 20

原创 【多线程基础】指令、进程调度、了解计算机是如何进行工作的

计算机不仅仅是指电脑,日常生活中用的 手机、平板、电视、路由器等…都可以叫做计算机现在的计算机,大体分为几个大类:1)终端设备:(台式机、笔记本、手机、ipad…)平时用户使用的2)服务器:日常普通用户见不到的。以后作为开发人员,要经常打交道。3)嵌入式设备:主题功能不是用来“计算”,而是针对一些特殊的场景,量身定做的“专用计算机”。以上设备:遵循“冯诺依曼体系”计算机使用二进制表示存储数据)(大的基调就是冯大佬定下来的)一个程序,运行起来/跑起来,在操作系统中,就会出现一个对应的进程。

2024-08-10 11:12:53 1673 9

原创 【数据结构】二叉搜索树(Java + 链表实现)

Map接口是独立的实现Iterable接口的集合都是可以使用 for - Each 语句进行打印的搜索性能会非常高。

2024-08-07 17:24:39 1757 21

原创 【数据结构】排序 —— 归并排序(mergeSort)、计数排序、基数排序

海量数据的排序问题外部排序:排序过程需要在磁盘等外部存储进行的排序 前提:内存只有 1G,需要排序的数据有 100G因为内存中因为无法把所有数据全部放下,所以需要外部排序,而归并排序是最常用的外部排序先把文件切分成 200 份,每个 512 M分别对 512 M 排序,因为内存已经可以放的下,所以任意排序方式都可以进行 2路归并,同时对 200 份有序文件做归并过程,最终结果就有序了。

2024-08-06 23:11:26 1429 11

原创 【数据结构】排序 —— 快速排序(quickSort)

快速排序是Hoare于1962年提出的一种二叉树结构的交换排序方法,其基本思想为:任取待排序元素序列中的某元素作为基准值,按照该排序码将待排序集合分割成两子序列,左子序列中所有元素均小于基准值,右子序列中所有 元素均大于基准值,然后最左右子序列重复该过程,直到所有元素都排列在相应位置上为止。快速排序整体的综合性能和使用场景都是比较好的,所以才敢叫快速排序时间复杂度: O(N*logN)空间复杂度: O(logN)稳定性:不稳定。

2024-08-05 23:38:47 1411 8

原创 【leetcode】根据二叉树创建字符串、二叉树的前中后遍历(非递归链表实现二叉树)

递归函数我们也可以用迭代的方式实现,两种方式是等价的,区别在于递归的时候隐式地维护了一个栈,而我们在迭代的时候需要显式地将这个栈模拟出来,其他都相同.

2024-08-04 23:45:02 1776 1

原创 【leetcode】平衡二叉树、对称二叉树、二叉树的层序遍历(广度优先遍历)(详解)

在遍历每个结点进行左右子树求高度的时候,就进行判断,能够优化时间复杂度该题有递归的思想,一定要结合图形来解决层序遍历就是广度优先遍历。

2024-08-04 22:17:29 1686 1

原创 【leetcode】相同的树、另一棵树的子树、翻转二叉树(利用深度优先遍历)

一定要结合图像来写题,递归有点绕,将大问题划分成一个一个相同的小问题来求解,一定要注意判断条件。

2024-08-03 23:50:07 1277 1

原创 【数据结构】排序基本概念、插入排序、希尔排序(详解)

插入排序、希尔排序

2024-08-03 21:30:41 1612 1

原创 【数据结构】二叉树基本操作(孩子兄弟表示法 + Java详解 + 原码)

学习二叉树一定要结合图形,要掌握递归的思想,就是将一个大问题划分成相同的小问题二叉树部分要掌握前序、中序、后序、层序四种遍历方式,因为好多题就是基于这四种遍历方式的变种例如:求最大宽度求这棵树的左视图求这棵树的右视图。

2024-08-02 22:47:57 1363 6

原创 【数据结构】树、二叉树(基本概念)

在学习二叉树的基本操作前,需先要创建一棵二叉树,然后才能学习其相关的基本操作。由于刚开始对二叉树结构掌握还不够深入,为了降低学习成本,此处手动快速创建一棵简单的二叉树,快速进入二叉树操作学习,等 二叉树结构了解的差不多时,反过头再来研究二叉树真正的创建方式。从概念中可以看出,二叉树定义是递归式的,因此后序基本操作中基本都是按照该概念实现的。

2024-07-31 09:44:35 1024 2

原创 【数据结构】队列(链表实现 + 力扣 + 详解 + 数组实现循环队列 )

队列实现及使用(包括循环队列、用栈实现队列、用队列实现栈、了解双端队列)

2024-07-29 23:44:22 1404 2

原创 【LeetCode】栈 - 20.有效的括号、150.逆波兰表达式求值、155.最小栈、栈的压入、弹出序列

栈、虚拟机栈、栈帧有什么区别呢?栈 ---- 数据结构虚拟机栈 ---- JVM内存栈帧 ---- 调用方法的时候开辟的内存

2024-07-27 23:42:18 1280 3

原创 【数据结构】栈(基于数组、链表实现 + GIF图解 + 原码)

栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈 顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO( Last In First Out)的原则。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。出栈:栈的删除操作叫做出栈。出数据在栈顶。栈顶栈底: 这个描述是偏向于逻辑上的内容,因为大家知道数组在末尾插入删除更容易,而单链表通常在头插入删除更容易。所以数组可以用末尾做栈顶,而链表可以头做栈顶。LinkedKist 就可以当做栈来使用。

2024-07-26 23:06:28 1177 7

原创 【数据结构】链表之LinkedList(无头双链表实现 + 详解 + 原码)

LinkedList是无头双向非循环链表学习链表的知识一定要 结合图,多画图,才能深刻理解LinkedList官方文档LinkedList的底层是双向链表结构,由于链表没有将元素存储在连续的空间中,元素存储在单独的节 点中,然后通过引用将节点连接起来了,因此在在任意位置插入或者删除元素时,不需要搬移元素,效率比较高。在集合框架中, LinkedList也实现了List接口。

2024-07-26 11:03:14 1874 6

原创 【LeetCode】141.环形链表、142. 环形链表 II(算法 + 图解)

环形链表

2024-07-25 21:13:04 2325 4

原创 【LeetCode、牛客】链表分割、链表的回文结构、160.相交链表

链表分割、链表的回文结构、160.相交链表

2024-07-25 11:23:22 1717 6

原创 【数据结构】单链表面试题(Java + 力扣 + 详解)

单链表力扣面试题

2024-07-24 20:36:03 1519 1

原创 【数据结构】链表(单链表实现 + 详解 + 原码)

链表是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的 。

2024-07-23 23:51:10 1394

原创 【数据结构】顺序表(杨辉三角、简单的洗牌算法)

ArrayList 的具体使用

2024-07-22 22:55:49 861

原创 【数据结构】Java -- 顺序表(详解)

在集合框架中,List是一个接口,继承自Collection。List方法解释尾插 e将 e 插入到 index 位置尾插 c 中的元素删除 index 位置元素删除遇到的第一个 o获取下标 index 位置元素将下标 index 位置元素设置为 element清空判断 o 是否在线性表中返回第一个 o 所在下标返回最后一个 o 的下标截取部分 list在集合框架中,ArrayList是一个普通的类,实现了List接口,具体框架图如下:【说明】ArrayList是以泛型方式。

2024-07-21 23:31:42 1971

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除