- 博客(93)
- 收藏
- 关注
原创 考研数学:一元函数微分学 与 多元函数微分学
下面这题选B,请你为其他三个选项分别举出反例直角坐标下的曲率计算公式参数方程的曲率计算公式推导过程如下极坐标下的曲率计算公式这个我们就是用上面的参数方程公式来做的这是曲率中一个非常关键但容易混淆的问题。答案非常明确: 曲率圆圆心在曲线的凹侧(concave side)也就是说曲线向哪边“弯”,圆心就在哪边,即圆心的位置和曲线的凹凸性有关。如果该曲线在该点二阶可导,那么我们就可以通过该点二阶导的正负来判断圆心的位置,即计算f′′(x0)f''(x_0)f′′(x0)(更一般的非函数形式也可以
2025-11-23 21:21:40
485
原创 KMP算法
没错,是这样的,但是这样的代码效率是很低的,假设haystack字符串长度是n,needle字符串长度是m,那常规解法的时间复杂度就是O(m×n),科学家之所以提出KMP算法,就是想要优化这个查找的过程,在经过科学家的优化之后,使用KMP算法解决字符串查找问题,其时间复杂度可以降为O(m+n),直接乘法变加法,同志们这太猛了啊,还得是科学家。我也是这么想的,可能作者一开始也是按照我们的思路去写的,只不过后面他发现,可以用Next数组简化求公共前后缀的步骤,于是他从这个角度出发,最终写成了上面的代码。
2025-11-18 19:25:39
322
原创 考研408——操作系统
啥叫文件的逻辑结构呢?其实很好理解,就是在用户的视角下,看到的文件结构。啥叫用户视角下看到的文件结构?难道用户看到的文件结构不是真正的文件结构吗?没错,确实不是,那为啥呢?这主要是因为,为了实现高效的存储(为了在有限的空间内装入尽可能多的文件),工程师们肯定会设计一些特殊机制。而这些特殊机制在用户层面是不好理解的,如果把原原本本的结构展现给用户,这样就会增加用户的理解成本,不利于产品的推广。为了使产品的用户尽可能的多,我们肯定是要想尽一切办法,让用户使用计算机变得很简单。
2025-11-02 20:18:12
878
原创 考研408——计算机组成原理
啥叫文件的逻辑结构呢?其实很好理解,就是在用户的视角下,看到的文件结构。啥叫用户视角下看到的文件结构?难道用户看到的文件结构不是真正的文件结构吗?没错,确实不是,那为啥呢?这主要是因为,为了实现高效的存储(为了在有限的空间内装入尽可能多的文件),工程师们肯定会设计一些特殊机制。而这些特殊机制在用户层面是不好理解的,如果把原原本本的结构展现给用户,这样就会增加用户的理解成本,不利于产品的推广。为了使产品的用户尽可能的多,我们肯定是要想尽一切办法,让用户使用计算机变得很简单。
2025-10-27 16:31:44
1066
原创 HTTP 1.0版本的webserver自主实现
WWW是环球信息网的缩写,(亦作“Web”、“WWW”、“‘W3’”,英文全称为“World Wide Web”),中文名字为“万维网”,"环球网"等,常简称为Web3W它其实是一套访问互联网资源的一套生态,它规定了我们访问资源的方式是通过我们的 URL 来访问,它将互联网中的各种内容称之为各个资源,通过设计 HTTP 协议将资源从远端拉取到本地等等。上面这一整套对访问互联网资源的规定我们可以统称为3Wweb客户端其实就是你电脑中的浏览器web服务器就是各大网站后台的服务器。
2025-10-26 23:57:25
618
原创 考研数学——曲线曲面积分篇
(1)平面曲线的第一类曲线积分设LLL是平面上的光滑曲线段(切线连续变化),fxyf(x,y)fxy是定义在LLL上的有界函数。若极限∫Lfxydslimλ→0∑i1nfξiηiΔsi∫Lfxydslimλ→0∑i1nfξiηiΔsi存在,则称该极限为函数fxyf(x,y)fxy在曲线LLL上对弧长的曲线积分(即第一类曲线积分)。若LLL。
2025-10-23 22:57:01
496
原创 考研数学——无穷级数篇
部分和数列的定义:取级数的前nnn项相加,得到的和Snu1u2⋯unSnu1u2⋯un,称为级数的前nnn项部分和(形成新的数列Sn\{S_n\}Sn,即“部分和数列”)引入了部分和数列之后,我们就能用级数对应的部分和数列极限是否存在,来定义级数的发散与收敛级数收敛与发散的定义若部分和数列Sn\{S_n\}Sn的极限存在,即limn→∞SnSlimn→∞SnSSSS。
2025-10-23 15:54:38
254
原创 考研数学笔记(概率统计篇)
现有n个独立同分布的随机变量X1 ~ Xn,无论 Xi 服从什么分布,只要我们对样本均值进行标准化,当样本容量n趋近于无穷时,得到的随机变量一定服从标准正态分布。当样本量n 趋近于无穷时,样本均值依概率收敛于总体的期望。请问上面俩式子是等价的嘛?
2025-10-15 19:58:07
400
原创 考研数学笔记(线性代数篇)
若α是A的特征值λ对应的特征向量,AB=BA,则Bα也是A的特征值λ对应的特征向量(A和B共享特征子空间)若n阶矩阵A有n个不同的特征值,则n阶矩阵B也一定有n个不同的特征值,A与B共享一组n个线性无关的特征向量(这组特征向量构成的P矩阵,既可以让A相似对角化,也可以让B相似对角化),但是不共享特征值。
2025-10-04 19:15:21
257
原创 考研数学笔记(高等数学篇)
若n阶矩阵A有n个不同的特征值,则n阶矩阵B也一定有n个不同的特征值,A与B共享一组n个线性无关的特征向量(这组特征向量构成的P矩阵,既可以让A相似对角化,也可以让B相似对角化),但是不共享特征值。若α是A的特征值λ对应的特征向量,AB=BA,则Bα也是A的特征值λ对应的特征向量(A和B共享特征子空间)所以B的秩肯定不能超过解空间的维度:r(B)≤dim N(A)=4-r(A)若AB=0,说明B的所有列向量都在Ax=0的解空间中。由于r(A)+解空间的秩=4(4是A的阶数)所以r(B)+r(A)≤4。
2025-10-03 07:56:13
469
原创 考研数学——数列篇
设xn\{x_n\}xn是一个数列,aaa是一个常数。若对任意给定的正数εε(无论多小),总存在一个正整数NNN,使得当nNn > NnN时,不等式∣xn−a∣ε∣xn−a∣ε恒成立,则称数列xn\{x_n\}xn的极限为aaa,记为limn→∞xnalimn→∞xna(此时极限存在);若不存在这样的常数aaa,则数列极限不存在。定义法证明的核心逻辑:本质是“对任意ε0ε。
2025-10-01 09:08:23
780
原创 376.摆动序列
f[i] 表示:以 i 位置元素为结尾的所有的子序列中,最后一个位置呈现 “上升” 趋势的最长摆动序列的长度。g[i] 表示:以 i 位置元素为结尾的所有的子序列中,最后一个位置呈现 “下降” 趋势的最长摆动序列的长度。根据初始条件和状态转移方程,确定填表顺序,进而逐步填满dp表,最终返回题目要的结果。dp[i] 表示:以 i 位置元素为结尾的所有的子序列中,最长的摆动序列的长度。
2025-09-27 06:21:23
905
原创 最长递增子序列
根据初始条件和状态转移方程,确定填表顺序,进而逐步填满dp表,最终返回题目要的结果。dp[i]的含义是以nums[i]为结尾的最长递增子序列的长度。
2025-09-26 16:14:58
277
原创 环绕字符串中唯一的子字符串
根据初始条件和状态转移方程,确定填表顺序,进而逐步填满dp表,最终返回题目要的结果。记f[i]为字符串s中以s[i]为结尾的在base中出现的最长子字符串长度。
2025-09-26 15:46:59
314
原创 139.单词拆分
对于每个位置 i,从 0 到 i - 1 遍历,如果 dp[j] 为 true 且子字符串 s.substr(j, i - j) 存在于字典中,那么 dp[i] = true。根据初始条件和状态转移方程,确定填表顺序,进而逐步填满dp表,最终返回题目要的结果。f[i+1]表示s[0]~s[i]这个子串能否被字典中的单词拼出。
2025-09-26 07:35:55
152
原创 最长湍流子数组
根据初始条件和状态转移方程,确定填表顺序,进而逐步填满dp表,最终返回题目要的结果。f[i]的含义是以nums[i]为终点的最大湍流子数组长度。
2025-09-26 06:58:31
164
原创 等差数列划分
由于这俩就差二,所以我们只要改变一下f[i]的起点就能实现意义的转换(理解的时候可以按照长度去理解)根据初始条件和状态转移方程,确定填表顺序,进而逐步填满dp表,最终返回题目要的结果。f[i]-2表示的是以nums[i]为终点的等差子数组的个数。f[i]表示以nums[i]为终点的最长等差子数组的长度。
2025-09-26 06:26:10
340
原创 乘积为正数的最长子数组长度
根据初始条件和状态转移方程,确定填表顺序,进而逐步填满dp表,最终返回题目要的结果。f[i]的含义是乘积为正数的以nums[i-1]为终点的最长子数组长度。g[i]的含义是乘积为负数的以nums[i-1]为终点的最长子数组长度。
2025-09-26 06:02:59
331
原创 乘积最大子数组
由于数组中可能存在负数,负数乘以负数会得到正数,因此需要同时维护当前最大值和当前最小值(因为最小值乘以负数可能变成最大值)。根据初始条件和状态转移方程,确定填表顺序,进而逐步填满dp表,最终返回题目要的结果。位置为结尾的所有子数组中最大乘积。位置为结尾的所有子数组中最小乘积。
2025-09-26 05:27:41
314
原创 测试的分类
安全性测试主要是测试系统中是否存在安全漏洞,以及测试系统面对黑客病毒攻击时的安全防护能力。你安全性测试中的安全,其实指的就是信息安全与系统安全,信息安全就是你这个系统中用户的隐私数据不能被第三方获取,系统安全指的是你这个系统在遭受各种黑客和病毒攻击之后会不会崩。因此我们在设计测试用例的时候就可以从这些方面来考虑用户信息安全用户的隐私数据会不会在传输的过程中被第三方成功截获?SSL安全层协议,对称加密与非对称加密用户的隐私数据会不会在服务器端被第三方非法获取?数据库中用户密码有没有做加密存储。
2025-09-25 07:07:01
715
原创 性能测试工具篇——JMeter的使用
我们同样还是以一个场景来引入。接着上面的说,检测完博客的主页和登录页面之后,我们还需要测试博客的具体浏览页面。首先我们先进入一篇博客的详情页,找到可以测试的接口,将其信息复制下来,方便做后续详情页取样器的配置然后在JMeter的线程组中再添加一个取样器,配置如下配置完毕之后,我们运行测试,结果如下目前看来没啥问题,那假如说有一天,张三发现blogId=158477的这篇博客写的不好,把它删了。
2025-09-23 10:07:09
785
原创 性能测试的概念
以购物软件为例:1)购物过程中页面突然无法打开,刷新后可以重新打开2)双十一期间无法进入商品页面3)页面加载时间过长,需要消耗用户大量的等待时间……
2025-09-21 04:46:31
920
原创 自动化测试常用函数
cssSelector就是我们常说的选择器。XML路径语言,不仅可以在XML文件中查找信息,还可以在HTML中选取节点。xpath使用路径表达式来选择xml文档中的节点xpath语法:获取HTML页面所有的节点//*获取HTML页面指定的节点// [指定节点]//ul:获取HTML页面所有的ul节点//input:获取HTML页面所有的input节点..//input/..获取input节点的父节点[@...]匹配HTML页面中id属性为kw的节点使用指定索引的方式获取对应的节点内容。
2025-09-19 03:32:48
999
原创 自动化测试的概念
这手工测试和自动化测试。你的感觉没错,他们干的事情确实没啥区别,最大的区别在于驱动计算机进行测试的角色不同:手工测试是人来驱动,而自动化测试则是程序驱动。当新的版本即将上线,意味着有用户使用新的版本,也有用户在使用旧的版本!自动化测试不一定比人工测试更能保障系统的可靠性,自动化测试也需要测试人员进行设计,后续如果有功能的变更,自动化测试也需要进行不定期的维护和更新。答案是以前的老功能也要测,因为新增的代码很有可能会对以前的老代码产生影响,为了确保以前的功能不受影响,我们必须也要对以前的老功能进行测试。
2025-09-14 10:35:38
1070
1
原创 设计测试用例
弱网是啥意思?就是网络状况不好的情况。弱网测试,就是检测产品在弱网状态下的各种性能能否符合我们规定的标准wifi5G4G3G、2G具体检测的东西包括用户输入的账号中包含admin字符,或者通过内部链接进入注册页面,提交注册按钮成为管理员身份;反之无管理员身份。现在我们要根据这条规则设计测试用例,此时就可以用判定表法,具体的使用步骤如下(1)找到有哪些输入和输出条件输入:账户包含admin字符,内部链接进入注册页面,提交注册按钮输出:管理员/无管理员。
2025-09-13 02:32:23
785
1
原创 测试中的Bug
同时存在多个BUG,我要优先修复级别更高的BUG评价一个程序员的绩效,不仅要看他工作中出现BUG的数量,还要看他搞出来的BUG的级别,搞出BUG越严重,那他就越菜。
2025-09-12 00:33:47
866
原创 测试的概念
用户需求可以简单理解为甲方提出的需求。该需求一般比较简略,通常是一句话。比如:实现一个声控灯,实现一个软件的登录功能软件需求也叫功能需求,该需求会详细描述开发人员必须实现的软件功能。软件需求是测试人员进行测试工作的基本依据。
2025-09-11 22:32:10
960
原创 什么是测试
由于测试工作成效很难衡量,测试用例执行、bug数目的多少都无法说明产品的质量是否合格;虽然在敏捷模型中团队中每个人都需要对产品质量负责,但是产品的测试质量是跟测试人员那密切相关的。所以,责任感是最重要的测试必备素质之一。压力,测试工作者,特别是属于互联网行业需要能够抗住各种压力。
2025-09-11 00:03:53
1035
原创 redis持久化
redis生成的rdb文件,是存放在redis的工作目录中的。具体存放在哪里(默认在/var/lib/redis/目录下),具体叫什么名字(默认叫dump.rdb),都可以在redis配置文件redis.conf中进行设置打开redis.conf中设置的指定路径,我们发现了一个dump.rdb文件这个文件就是redis根据RDB策略定期生成的redis快照文件。redis定期会将当前时刻redis服务器中的数据形成一个快照,备份到磁盘中,这个磁盘备份文件就是dump.rdb。
2025-09-09 01:49:54
704
原创 redis的类型(3)一些特殊类型
不仅仅是redis,遍历其他内容的时候,也是比较忌讳一边遍历,一边修改的,比如在C++ STL中,在遍历中进行 修改/新增/删除操作 也很有可能导致 迭代器失效 (C++里遍历中修改会直接报错崩溃,但你redis遍历中修改不会给你崩溃,就是说操作出现遗漏重复了,你都不知道!在新增元素的时候,HyperLogLog能够通过对比新插入数据的特征和内部已有数据的特征,判断当前插入的元素是否是一个HyperLogLog中已有的元素,如果是,则不会插入,如果不是,则记录这个新元素的特征,并将集合元素总数加1。
2025-09-08 15:27:46
724
原创 redis的数据类型:SET与ZSET
交集和并集想必不用我多介绍,集合A与集合B的差集定义是,A中有且B中没有的所有元素组成的集合,就叫做A与B的差集,记作A-BZset全称是有序集合,Z就表示有序,如何理解这里的有序呢?这里的有序是指,集合中的元素,按照一定的排序规则,在集合中升序或者降序排列(特别地,对于 zset这种有序集合,内部就是按照升序方式来排列的!!!作用是向有序集合中添加元素这个函数的功能是计算多个有序集合的交集,并把交集结果存储到一个新的有序集合里。
2025-09-08 01:10:24
641
原创 redis的数据类型:List
list内部(编码方式)并非是一个简单的数组,而是更接近于“双端队列”(deque) ,可以在两端进行高效的插入删除操作(时间复杂度均为O(1))2.LPUSH中的L是left的缩写,意思是从链表的最左边插入LPUSH key element [element …] 一次可以插入一个元素,也可以插入多个元素。1 2 3 4按照顺序,依次头插这几个元素。全都插入完毕,4是在最前面,1在最后面。
2025-09-07 13:18:04
943
原创 redis的数据类型:Hash
主要是用于区分Redis整体的键值对(key-value),注意这里的value是指field对应的的值,不是键(key)对应的的值,请注意value在不同上下文的作用。
2025-09-06 20:10:05
1022
原创 redis的数据类型:string
JSON(JavaScript Object Notation)即 JavaScript 对象表示法 ,是一种轻量级的数据交换格式。它能够以人类可读的文本形式表示数据,结构清晰。比如 {“name”: “John”, “age”: 30} ,很容易理解其中表示的是一个人的姓名和年龄信息。json字符串不仅可以表示简单的键值对,也能嵌套表示复杂的对象和数组结构。
2025-09-06 16:19:52
871
原创 认识redis(2)
对于同一种数据类型,Redis内部可能会有好几种实现方式Redis中声明的数据类型,其实不是按照我们在C++语言中理解的对应类的实现方式来实现的,Redis有自己的实现方式,但是对外提供的接口在使用上和我们的理解是一致的,所以我们感知不到这个区别举个例子比如鸭脖店,承诺卖给你的这个东西吃起来和鸭脖是一样的。但是,内部的数据结构,是否真的是鸭脖,可能会根据实际情况,做出一定的优化~~
2025-09-06 01:51:50
683
原创 认识redis
Redis的全称:Remote Dictionary Server,远程字典服务Redis是一个开源的内存数据结构存储系统,也就是说Redis是用来存数据的!Redis的初心是用来作为一个“消息中间件”(消息队列),处理分布式系统下的生产者消费者模型的 ,但是后来人发现Redis做分布式下的数据库和存储系统会更香,有意栽花花不开,无心插柳柳成荫了属于是单机架构就是你的服务只有一台服务器,所有的服务都由这台服务器负责。
2025-09-05 22:11:28
697
原创 MYSQL 事务的隔离性(2)
磁盘的非易失性:负责“一旦数据完整写入磁盘,就永远不丢”——这是“结果层面”的保障;redo log:负责“让数据能安全、高效地从内存写到磁盘”——这是“过程层面”的保障(解决写入中掉电损坏、写入性能差的问题)。没有redo log,磁盘的非易失性就像“有坚固的仓库,却没有安全高效的运输队”——要么运输时货物损坏(部分写入),要么运输太慢导致仓库堵死(性能崩溃)。redo log记录“物理修改”实现崩溃恢复事务执行时,所有对数据页的修改(如某行某字段的值变化)会先记录到redo log。
2025-09-04 03:12:21
752
原创 MYSQL 事务的隔离性(1)
幻读和不可重复读问题我们后面在说,现在我们重点来认识一下脏读首先我们来认识一下脏读操作,所谓的脏读操作指的是:一个事务读取到了另一个事务未提交的数据脏读问题指的就是脏读操作带来的问题,即若一个事务读取了另一个事务未提交的数据,但另一个事务后续未提交,直接回滚了,那么先读取的事务拿到的数据就是无效的,基于该数据的操作也可能出错。比如,银行转账时,事务 A 从账户 A 扣钱但未提交,事务 B 此时读取账户 A 余额,若事务 A 回滚,事务 B 读到的就是错误余额。
2025-09-03 00:42:30
1013
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅