- 博客(61)
- 收藏
- 关注
原创 计算机网络【第一章】
描述因特网可以从两个方面进行描述:①描述因特网的具体构成 ②根据为分布式应用提供的联网基础设施来描述一个分组从源到目的地,经过节点(路由器和交换机)都会经受以下的几种时延处理时延:检查分组的首部和决定将该组导向何处需要的时间,还有其他因素,比如检查比特级别的差错所需要的时间排队时延:在导向的出口处,有分组进行传输或有分组进行排队,就需要等待传输时延:从首个分组到最后一个分组从节点处传输出来所需要耗费的时间,传输时延=分组的长度/链路的传输速率。
2024-04-19 18:56:22
1589
4
原创 JWT认证原理
RFC 7519HMACRSAorECDSA是一种小巧的、自包含的JSON对象,用于两个端系统之间的安全传输,它是一种数字标签,它可以使用了一种严格的算法进行签名,或者使用公钥和私钥的形式进行签名。
2024-03-26 13:43:21
1006
原创 leecode 【二】
给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回null。
2023-12-01 22:33:42
1039
原创 Leecode 【一】
新指针toriose前进一步,相遇点的指针前进一步, 在有限次步骤下新指针toriose与相遇点的指针hare,会在环的入口相遇。对于这道题只需要判断链表是否有环,只需要设置一个快慢指针,当两个指针相遇的时候就是有环,如果走到后面快指针为空,那就是无环。hare前进两一步,toriose前进一步,在有限次步骤下hare与toriose会在环上相遇,此时。第一步很简单,一个快指针和一个慢指针在环上循环,一定会在某个时刻快指针追上了慢指针。链表中有一个环,其尾部连接到第二个节点。,判断链表中是否有环。
2023-12-01 21:25:19
649
原创 块链串的实现
串有三种三种顺序串,链式串和块链式串常用的是第一种顺序串前两者我在这就不进行讲解了,因为就是普通的顺序表和链式表只是其中的值必须是字符而已为啥需要引入块链式串,我们之前分析过链表的优点是操作方便,而缺点是:存储密度较小 【存储密度=数据占的内存/实际占的内存】于是可以将多个字符放在一个节点中,以克服其缺点。
2023-10-15 16:36:25
317
原创 哈希表的实现
实现哈希表的方法有两种方法:开放寻址法 、链地址法开放寻址法:在开放寻址法中,所有的元素都存储在哈希表的数组中,冲突发生时会探测下一个可用的位置,直到找到一个空闲的位置。这种方法保持了元素的顺序,但可能导致聚集(clustering)。链地址法:链地址法使用一个数组来存储指向链表头部的指针,每个链表存储具有相同哈希值的元素。如果发生冲突,新的元素将被添加到该链表的末尾。这种方法可以避免聚集,但不保持元素的顺序。
2023-10-15 16:17:28
924
原创 基于express调用chatgpt文字流输出和有道智云语音合成
express是基于node.js的一个web框架,可以更加简洁的去创建一个后台服务,由于项目的需要,引入和typescript,经过几天的努力实现了chatgpt文字流输出+有道智云语音合成的结合(略有遗憾),下面我记载以下,以供参考。
2023-07-26 09:35:24
1655
2
原创 nodejs(express)+TypeScripts环境
这能让我们在命令行中只需要npm run start命令就能实现自动执行ts的编译和node的启动。添加type模式[js为啥模式commonjs和module],main为入口文件。在package中需要进行以下两处的修改。
2023-07-03 11:31:04
880
原创 【二】构造函数和原型
console.log("我会唱歌!")var star=new Star("张三",20)star.sing() //我会唱歌!构造函数是一种特殊的函数,主要用于初始化对象,他总是与new一起使用,我们把对象的一些公共的属性和方法抽取出来,然后封装到这个函数里面new 在执行时会做四件事情:在内存中创建一个新的对象让this指向这个新的对象执行构造函数中的代码,给这个新对象添加属性和方法返回这个新的对象成员即是构造函数包含的属性和函数,而成员又分为:实例成员和静态成员。
2023-06-27 18:23:42
169
原创 【一】对象和类
在javascript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等在ES6中新增加了类的概念,可是使用class关键字来声明一个类。
2023-06-27 16:43:56
161
原创 数据库原理填空题
自始至终参与数据库设计,其水平决定了数据库系统的质量。概念设计得到的E-R图转换成DBMS支持的数据模型。决定了构建数据库的速度和质量 调查的重点是。)一起组成了数据库管理系统的存取控制子系统。)是在需求分析机概念结构设计的基础上进行的。主要参加需求分析与数据库的运行和维护。)共同构成数据库管理系统的安全机制。)NF依然存在一定的插入和删除异常。)是系统中的被动实体,受主体操纵。)是对信息世界数据信息的描述。)的约束,参照完整性则是对(之间的关系是两者结合设计。)是多个结构化的数据集合。
2023-04-27 14:04:27
680
原创 数据库原理容易出错的点
13、同一模式下触发器名必须是唯一的,并且触发器名与表名在同一模式下。不同的列(属性)可以是相同的数据类型和值域,但各属性名称必须不同。列是同质的,即每一列的分量是同类型的数据来自同一值域。10、数据集成化也就是数据的整体结构化。17、在规范化中各个异常表示的是什么?Where条件中用不到的字段不适合创建索引。每一个关系都有唯一的关键字标识它的各元组。关系的每一个分量是不可分的最小数据单位。模式【别名:概念模式、逻辑模式】外模式【别名:子模式、用户模式】对于那些只有很少数据值的列。内模式【别名:存储模式】
2023-04-27 14:00:54
754
原创 SQL应用题分析
根据语义判断出,需要对某个表中的某个特定的属性涉及到的集合进行讨论的时候,比如查询门门考试都及格的学生学号,根据语义,学生选择的课程有许多,这样在学习表中对于这个学生有多条记录,此时就需要用到组队,又出现门门及格的条件,就需要涉及到HAVING子句,将条件写进HAVING子句当中。这里我主要分析嵌入查询,以及何时使用GROUP BY,何时使用NOT IN的运算符,何时使用EXITS、NOT EXITS存在量词。子查询的操作结果是单个属性的时候,一般运算符就是>、>=、
2023-04-27 13:50:47
522
原创 模式分解(分解步骤)
化简获取最小依赖关系【步骤1.化简可以去掉的函数依赖,去掉这个函数依赖,利用剩余的关系依赖还可以推到出它的,那么最小函数依赖集就不包含它;步骤2:左边属性存在多个的,看能否互相推到出来,能被这几个属性的中除它以外的属性推出,就将这个属性从这属性组中去掉】④根据每一个函数依赖组成一个关系,最后检查一下,这几个关系中是否包含了原有关系的一个候选码,如果没包含还需要多加一个原关系候选码的关系。获取全部函数依赖,包括关系模型中出现的和隐式的(我们能推出来的)找到这个关系的候选码。
2023-04-27 13:40:45
301
原创 关系模式让你判断候选
依次类推,如果在加完一个属性后没有出现一个候选码,就取两个即出现在右边又出现在左边的属性,再进行推,题目一般不会这么难。如果闭包等于属性全集,那它就是唯一的一个候选码,若不是全集,需要在这个属性组中加入一个即出现在左边又出现在右边的属性。⑤如果闭包等于属性全集,那它就是其中一个候选码,再向这个属性组中加入另一个即出现在左边又出现在右边的属性。把只出现在左边的属性找出,出现在右边的属性找出,即出现在右边又出现左边的元素找出。先了解,只出现在左边的属性一定是主属性,只出现在右边的属性,一定不是候选码,
2023-04-27 13:39:04
862
原创 mybits逆向工程时报String index out of range: -1
mybits逆向工程时报String index out of range: -1
2022-11-16 18:44:24
529
原创 C#面向对象
C#中class A:B是什么意思B是基类,A是子类,其实冒号(:)可以理解为java中的extend意为延伸,延长,也被称为扩展类。我们使用(Unified Modeling Language)UML语法来研究C#的类与对象用于表示类其中+表示公共成员-表示私有成员用于表示实例化对象在UML语法中,类的静态成员下有一条下划线在.NET Framework使用构析函数来清理对象,一般情况下是不需要我们去写构析函数代码的,而是由默认的析构函数自动执行,如果在删除对象实.
2022-05-20 10:59:32
518
原创 C#第三部分
输入调试信息:把运行时期的文本信息输入到Output窗口是非常简单的,只需要将调用替换成为WriteLine()调用,此时可以使用如下两个命令:。Debug.WriteLine。Trace.WriteLine两个命令用法几乎一样,唯一得区别是前者只在调试模式下运行,后者还可用于发布程序。这两个方法包含在System.Diagnostics名称空间内。这两个方法与WriteLine()方法是不同的,唯一的字符串是用于传输消息,但它不是用{x}的形式来插入变量值,而是采用+串联字符串的形式插
2022-05-20 10:52:37
112
原创 C#第二部分
关于函数的传参其中的参数位置不能变。函数中传参也可以定义为采用关键字params数组,在调用时函数时只需要传入数组类型的参数即可,并不要传入一个数组,如下:Static int SumVals(params int[] vals) //定义函数{Int sum=0;Foreach(int val in vals){Sum+=val;}Return sum;}//调用函数Int sum=SumVals(1,2,3,4,5,7)在函数调用时,传进去的参..
2022-05-20 10:50:21
242
原创 C#(第一部分)
关于C#的输入与输出:Console类支持用户使用标准输入设备如键盘和鼠标向计算 机输入数据,其实现的输入方法有Read、ReadLine、ReadKey等Read()方法只能读入一个数据,返回值是int类型ReadLine()方法返回值是String类型,若要转换为其他类型就有采用的静态类Conver的To...()方法实现或强制类型转换Console类支持计算机向标准输出设备如显示器输出数据, 其实现的输入方法有Write、WriteLine。C#的命名空间就相当于jav
2022-05-20 10:46:11
169
原创 Typescript编译常见选项
之前编写完ts后可以在命令行中输入tsc ts文件名,来编译生成js文件,当我们的ts文件更改的时候还是需要手动的通过命令来编译生成新的文件,此时就不太方便了,这个时候我们就需要 tsc ts文件名 -w (watch:看,观察),这条命令,让编译器自动观察ts文件的变动后进行自动编译,此处我们使用上面的监视命令,发现了一个问题,一个命令窗口只能够监视一个ts文件,如果项目中ts文件有很多,可想而知这种方法是行不通的此时我们希望有一个命令可以将所有的ts文件一次性编译而且同时监视此时我们就.
2022-05-17 18:34:08
2244
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人