自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 高阶数据数据结构 2024.7.9-24.7.15

高阶数据结构:AVL树、红黑树、并查集、位图、布隆过滤器、LUR CaChe、B-树、图

2024-07-18 10:45:00 1703

原创 B-树、B+树、B*树

主要介绍了B-树的插入操作,涉及到结点的分裂。图解+手动实现

2024-07-17 10:45:00 1347

原创 LRU CaChe(内存替换算法)

LRU是Least Recently Used的缩写,意思是最近最少使用,它是一种Cache替换算法。 什么是Cache?狭义的Cache指的是位于CPU和主存间的快速RAM,通常它不像系统主存那样使用DRAM技术,而使用昂贵但较快速的SRAM技术。广义上的Cache指的是位于速度相差较大的两种硬件之间,用于协调两者数据传输速度差异的结构。除了CPU与主存之间有Cache,内存与硬盘之间也有Cache,乃至在硬盘与网络之间也有某种意义上的Cache── 称为Internet临时文件夹或网络内容缓存等。

2024-07-16 11:00:00 530

原创 并查集 ——(快速判断两个元素是否在同一个集合中)

并查集(Union-Find)是一种用于维护元素分组信息的数据结构

2024-07-16 10:45:00 215

原创 图、图的遍历、最小生成树、最短路径

图是由顶点集合及顶点间的关系组成的一种数据结构

2024-07-15 21:51:56 909

原创 布隆过滤器

布隆过滤器是由布隆(Burton Howard Bloom)在1970年提出的 一种紧凑型的、比较巧妙的概率型数据结构,特点是高效地插入和查询,可以用来告诉你“某样东西一定不存在或者可能存在”,它是用多个哈希函数,将一个数据映射到位图结构中。此种方式不仅可以提升查询效率,也可以节省大量的内存空间。

2024-07-15 21:34:17 1084

原创 位图——哈希思想的应用

所谓位图,就是用每一个比特位来存放某种状态(0或1),是一种哈希思想的应用,适用于海量数据,整数,数据无重复的场景。通常是用来判断某个数据存不存在的。(注意比特位访问的顺序,下图是使用byte[]数组来充当位图,它的第一位是第一个byte的第一个比特位也就是byte[0]最右边的比特位

2024-07-15 21:30:47 993

原创 图解红黑树插入操作

红黑树,是一种二叉搜索树,但在每个结点上增加一个存储位表示结点的颜色,可以是Red或Black。 通过对任何 一条从根到叶子的路径上各个结点着色方式的限制,红黑树确保没有一条路径会比其他路径长出俩倍,因而是接近 平衡的。

2024-07-11 16:10:46 659

原创 二叉平衡树(左单旋,右单旋,左右双旋、右左双旋)

二叉平衡树的插入(右单旋,左单旋,左右双旋,右左双旋)

2024-07-10 21:00:44 503

原创 递归、搜索与回溯算法 2024.7.4-24.7.9

文章包括专题介绍、递归、二叉树中的深搜、穷举&暴搜&深搜&回溯&剪枝、综合练习、FloodFill算法、记忆化搜索。

2024-07-09 12:46:13 1079

原创 动态规划精品课 2024.6.26-24.7.3

十种动态规划常见题型(含题目链接)斐波那契数列模型、路径问题、简单多状态dp问题、子数组、子序列、回文串、两个数组的dp问题、01背包、完全背包、二维费用的背包问题。还有一些递归解法的题目可以转化成dp问题。

2024-07-03 18:00:24 1067

原创 贪心算法精品课 2024.6.21-24.6.25

29道力扣贪心贪心算法题目:柠檬水找零、将数组和减半的最少操作次数、最大数、摆动序列、最长递增子序列、递增的三元子序列、最长连续递增序列、买卖股票的最佳时机、买卖股票的最佳时机 II、K 次取反后最大化的数组和、按身高排序、优势洗牌、最长回文串、增减字符串匹配、分发饼干、最优除法、跳跃游戏 II、跳跃游戏、加油站、单调递增的数字等题目。942. 增减字符串匹配455. 分发饼干553. 最优除法45. 跳跃游戏 II55. 跳跃游戏、加油站

2024-06-25 21:42:13 894

原创 优选算法刷题笔记 2024.6.10-24.6.20

包含十八中常见算法。双指针、滑动窗口、前缀和、位运算、模拟、分治、链表、哈希表、字符串、栈、队列、BFS、最短路径、多源最短路径、拓扑排序

2024-06-20 18:30:35 612

原创 Java基础面试题

Java基础面试题

2024-04-20 16:21:35 2423

原创 如何理解泛型擦除机制的兼容性

通过擦除机制,Java泛型的引入没有强迫开发者或用户升级他们的JVM环境就可以使用泛型带来的优势,同时保持了与之前版本的代码的兼容性。这种设计使得开发者可以逐步采用新特性,而不必担心既有应用和库的兼容性问题。这是Java语言设计中非常精妙的一部分,它极大地帮助了Java在工业界的长期发展和应用。

2024-04-19 13:07:30 347

原创 利用私有构造器或者枚举类型强化Singleton属性

effective java读书笔记:第二章第三目,主要是介绍了使用枚举类型强化Singleton属性

2024-04-03 21:04:25 367

原创 Redis主从复制

本文介绍redis集群的主从模式,主从复制主要有三种复制方式:全量复制、部分复制、实时复制。另外还简单介绍了集群的拓扑结构。

2024-04-02 01:26:51 838 1

原创 Redis事务

redis中的事务并不像MySQL那样复杂,因为是单线程所以不牵扯到事务的隔离。本文介绍了MULTI、EXEC、DISCARD 、WATCH以及UNWATCH命令。更高级的redis事务可以使用lua脚本完成。

2024-03-30 19:57:27 535

原创 当构造器参数较多时考虑用生成器

Effective Java第二章第二目:生成器当类的属性较多时,构造方法的写法就会很臃肿,本文由易到难介绍了三种方法:重叠构造器、JavaBeen模式、生成器模式。主要以代码示例为主,读者可自行体会。

2024-03-30 01:29:09 165

原创 用静态工厂方法代替构造器

Effective java中文版第二章第一目:使用静态工厂方法代替构造方法

2024-03-29 23:25:34 2085

原创 Redis持久化:RDB与AOF

reids持久化方式:RDB、AOF、混合持久化。

2024-03-29 11:46:24 2256 1

原创 SpringBoot Redis的使用

(介绍springboot redis) && (如何流畅访问github)

2024-03-28 00:59:26 542 1

原创 Jedis

介绍什么是jedis。如何安全访问云服务器redis服务jedis简单使用,遗忘时查文档搜一搜即可。

2024-03-28 00:39:53 531 1

原创 Redis渐进式遍历与数据库管理

本文介绍了渐进式遍历以及redis的数据库渐进式遍历:防止遍历操执行的时间过长造成阻塞,遍历的时候存在key的增删改查所以遍历结果存在一些漏查重查。redis数据库:一共提供了16个数据库编号0-15,每个数据库都相互独立

2024-03-25 13:26:47 355

原创 Redis中特殊场景的数据类型(Streams、Geospatial indexes、Bitmaps、Bitfields、HyperLogLog)

Redis中特殊场景的数据类型(Streams、Geospatial indexes、Bitmaps、Bitfields、HyperLogLog)介绍了这些数据结构的使用场景和相关命令。

2024-03-25 12:44:28 893

原创 Redis中zset数据类型的相关命令、编码方式和应用场景

Redis中zset数据类型的相关命令、编码方式和应用场景相关命令:zadd,zrange,zcard,zcount,zpopmax,zpopmin,zscore,zrem,zincrby,,集合运算编码方式:ziplist、skiplist应用场景:排行榜系统

2024-03-24 14:53:22 1169 1

原创 Redis中set数据类型的相关命令、编码方式和应用场景

本文介绍了redis中set数据类型的相关命令、编码方式以及应用场景;相关命令:sadd、smembers、sismember、scard、spop、smove、srem、交集、并集、差集;编码方式:intset、hashtable;应用场景:保存标签、共同好友、统计UV;

2024-03-23 09:00:00 572

原创 Redis中list数据类型的相关命令、编码方式和应用场景

Redis中list数据类型的相关命令:rpush、lpush、rpushx、lpushx、linsert、lrange、lindex、llen、lpop、rpop、lrem编码方式:quicklist(ziplist、limkedlist)应用场景:消息队列,存储博文列表进行分页查询

2024-03-22 11:19:21 795 1

原创 Redis中hash数据类型的相关命令、编码方式和应用场景

本文介绍了Redis中hash数据类型的相关名,我们不仅要关注命令的用法,还要关注这些命令的时间复杂度,已经错误使用所带来的隐患,不同数据类型的命令有着类似的使用规律,在学习了String数据类型的相关命令后,在上手hash的命令就简单很多了。除此之外,还减少了hash类型的实际编码方式ziplist以及hashtable,和常见的应用场景缓存结构化的数据。

2024-03-21 00:01:00 635 1

原创 Redis中String数据类型的编码方式 & String的应用场景

Redis中String数据类型的实际编码方式有三种int、embstr和raw,redis会自适应的选择其中之一。另外文章还列举了一些使用string数据类型的场景:计数、存储session信息、手机验证码。

2024-03-20 22:58:24 525

原创 Redis中String数据类型的相关命令

Redis不仅有可以搭配任意数据类型使用的全局命令,还有针对不同数据类型使用的命令,本文介绍的是String数据类型相关操作的Redis命令。

2024-03-19 17:53:22 947

原创 Redis的单线程模型,以及Redis为什么这么快!!!

Redis的单线程模型保证了redis不会出现线程安全问题但也会有一定的弊端;redis速度快的四大原因,经典面试题;浅谈IO多路复用机制;

2024-03-19 12:07:41 172 1

原创 Redis的数据类型和编码方式

Redis的数据类型和编码方式。Redis对所支持的数据类型做了自适应的优化,同一种数据类型可能采用不同数据结构来实现Redis会自动识别该用哪一种数据结构来实现该数据类型,也就是实际的编码方式。

2024-03-19 11:24:41 339 1

原创 定时器的实现原理(基于优先级队列/堆实现 & 基于时间轮实现)

定时器的实现原理(基于优先级队列/堆实现 & 基于时间轮实现)

2024-03-18 17:35:22 256

原创 Redis通用命令 & key的过期删除策略

Redis全局命令(set/get/keys/exists/del/expire/pexpire/ttl/type)Redis中key的删除策略

2024-03-18 16:17:16 1209

原创 认识Redis是什么?能干什么?Redis特性以及应用场景

官网进行了详细的自我介绍Redis是一个在内存中存储数据的中间件,用作数据库,用作数据缓存,在分布式系统中大展拳脚。

2024-03-17 23:29:29 684 1

原创 Ubuntu安装Redis并启动

简单介绍Ubuntu安装redis和一些相关命令,安装/启动/停止/重启/查看状态/产看进程/连接服务等命令以及修改配置文件

2024-03-17 20:24:05 354

原创 Redis【服务端高并发分布式结构演进之路】

服务端高并发分布式结构演进之路/初识Redis

2024-03-17 19:48:06 881

原创 本地Java项目如何移动位置!

新建的项目放错位置了,我想要把demo项目移动到javacode文件夹,该怎么办呢!PS:如果是maven项目,第一次移动还需要重建项目,根据页面提示操作即可!PS:千万不敢直接移动文件夹!

2023-11-02 09:59:39 52 1

原创 计算机系统基础

test.c 预处理得到test.itest.i编译得到汇编代码test.c通过汇编命令gcc -c test.s -o test.o生成可重定位的目标代码,test.o是一个二进制文件(机器指令表示的文件),想要看这个文件需要对其进行反汇编 objdump -d test.oC 语言是一种高级编程语言,它使用人类可读的语法和结构来编写程序。但计算机不能直接理解 C 语言代码,需要将其编译成机器指令才能在计算机上运行。编译器是将 C 语言代码转换为机器指令的软件。

2023-06-25 19:54:02 251 1

空空如也

空空如也

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

TA关注的人

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