- 博客(18)
- 收藏
- 关注
原创 Python:logging模块中Logger对象与addHandler
本文介绍了Python logging模块中Handler的工作原理。Logger对象通过addHandler()方法添加Handler,每个Handler需要实现emit()方法进行实际日志输出。Logger在调用日志方法时会创建LogRecord对象,通过handle()方法调用所有Handler的emit()方法。StreamHandler和FileHandler是两个常用Handler,分别用于输出到流和文件。整个调用过程是线程安全的,通过加锁机制保证。
2025-08-04 21:48:34
118
1
原创 inner join,left join和right join的区别
连接类型是否保留左表所有行?是否保留右表所有行?未匹配的字段填充INNER JOIN❌❌不保留未匹配行LEFT JOIN✔️❌右表字段为NULLRIGHT JOIN❌✔️左表字段为NULL。
2025-04-18 07:00:00
1729
原创 Java中equals与==的区别
给s3赋值时JVM 会将字面量 “hello” 存入常量池,并让s3指向字符串常量池中的这个“hello”对象。对于Java中的一些基础的东西,感觉也会,但是说不上来(按照费曼学习法那就是不会)。(intern),多个相同字面量可能指向同一地址,比如说对于代码(再把上面的代码拿过来,肯定不是为了水字数🤫)今天讨论一下Java中equals与==的区别(一眼看上去,啥呀这是,不都一样吗🤣)。直接赋值,而不是通过new关键字创建的,会被 JVM。,因此它们的内存地址是相同的,比较结果为。,因此它们的地址不同
2025-04-16 07:00:00
410
原创 数据库介绍以及MySQL的安装
关系型数据库称作SQL,比如Mysql,Oracle,Sql Server, DB2, SQLlite,它通过表与表之间,行与行之间的关系进行数据存储。
2025-04-15 15:43:16
288
原创 MySQL 中的聚合函数和GROUP BY以及HAVING与WHERE的对比
SUM(分数),并将得到聚合函数得到的结果记为总分,也就是数学和语文分数加起来记为总分(王五只有一科那么就是数学一门作为总分),最后保留的字段为。我们需要统计每个学生的总分,只显示总分超过 170 分的学生,可以使用以下SQL语句。这里先是将成绩表按学生一栏分组,这里学生有三个,分组后为就是3个组,这里称作。和我们前面再GROUP BY中的讲解的例子是一样,现在的SQL语句又多了一句。需要统计每个学生的“数学”课平均分,只显示平均分超过 80 分的学生。,而分组后的结果通常是聚合值(如总销量、平均分等)。
2025-04-14 14:33:47
772
1
原创 红黑树插入节点
红黑树插入分为两步,先按照二叉搜索树规则插入新节点。插入节点后红黑树的性质会被破坏,一般是破坏性质4(通过后续讲解就会明白得更清晰)。因此再通过调整颜色和旋转恢复红黑树性质。(不得不提一句,markdown插入伪代码还得是python😁🧐)。这些性质保证了红黑树的平衡性,这些性质很重要,每回都来重温一下。昨天事儿有点多,断更一次。今天感觉也快断更了,马上0点了。老规矩先重温(红温了要🤣)红黑树的性质。如有错误望大家指正🧐。今天继续学习红黑树。
2025-04-12 23:59:52
169
原创 记录一次Vulnhub:DC-1练习记录
(一)首先确定靶机的IP地址,由于我的kali和DC-1网络适配器均为NAT模式,与主机共享ip,所以通过MAC地址寻找虚拟机分配给靶机的IP,下为我的DC-1MAC地址。上图中192.168.171.135的MAC地址与我的DC-1的MAC地址相同,可以确定DC-1的IP地址为192.168.171.135。kali的IP地址192.168.171.130,那么DC-1的IP地址也为192.168.171.xxx,为进一步确定IP地址,使用kali的nmap扫描工具。使用msf6进行漏洞利用,输入。
2025-04-11 00:30:46
484
原创 关于做mamba网络的一些心得
python想要使用mamba就需要安装mamba库(大佬手搓的当我没说),直接pip install 是行不通的,可以去github网站https://github.com/state-spaces/mamba/releases找到各种版本的mamba库。我下载的是.whl文件的,下载到本地后(.whl),定位到文件目录,并使用pip install [文件名称]即可安装。虽然我安装的是linux版本的,但是我发现对于False版本不需要做任何改动,而对于True版本需要参考博客进行更改。
2025-04-10 23:59:35
537
原创 红黑树的右旋
上回已经学习了红黑树的左旋操作,这回来学习红黑树的右旋操作。右旋操作其实与左旋操作是对称,根本不需要讲。但是这种水文章的大好机会我怎么能轻易放过?这些性质保证了红黑树的平衡性,这些性质很重要,每回都来重温一下。如有错误望大家指正🧐。今天继续学习红黑树。
2025-04-09 23:52:40
196
原创 红黑树的左旋
并且说到了一个具有n个内部节点的红黑树的高度h≤2log(n + 1),也就是O(log n)。因此红黑树的插入和删除都可以在O(log n)的时间内完成。但是插入和删除操作必然会破坏红黑树的结构,使其不满足上述5条性质。为了维护这些性质,就需要修改红黑树中某些节点的颜色以及指针的结构。这些性质保证了红黑树的平衡性。如有错误望大家指正🧐。今天继续学习红黑树。上回说到红黑树有几个。
2025-04-08 23:40:29
194
原创 为什么一棵有n个内部节点的红黑树的高度至多为2log(n + 1)
由于红黑树的黑高至少是h/2,那么根据普通二叉搜索树的性质,以黑高为基准,最少节点数的情况是完全二叉树,即n >= 2^(bh) -1,其中bh是黑高。在这种情况下,这条路径的黑高等于树的高度h,因为所有的节点都是黑色,所以黑高h_b = h。而对于结论红黑树的黑高至少是树高h的一半,即h_b ≥ h/2。是指从节点出发到叶子节点路径上的黑色节点数量。根据性质4(红色节点的子节点必须是黑色)和性质5(从任一节点到其所有叶子节点的路径包含相同数量的黑色节点),红黑树的黑高至少是h/2,其中h是树的高度。
2025-04-07 13:20:33
367
原创 Generating Permutations Algorithm 1
这个算法的目的是生成从 1 到 n 的所有排列。它使用递归和交换的方法来实现。这个算法的核心在于通过交换和递归来生成所有可能的排列。每次固定一个数字后,递归处理剩下的数字,直到所有数字都被固定。
2024-09-22 20:45:59
662
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人