- 博客(48)
- 收藏
- 关注
原创 【无标题】
MyISAM是MySQL早期的默认存储引擎。Memory引擎的表数据是存储在内存中的,由于受到硬件问题、或断电问题的影响,只能将这些表作为临时表或缓存使用。
2025-12-26 19:04:02
548
原创 数据库习题
答案:D(参照完整性)详解:参照完整性是 Access 用于确保相关表中记录关系有效性的准则系统,能防止意外删除或更改相关数据,精准满足题干中主表与子表的关联约束要求。A 选项 “输入掩码” 用于规范数据输入格式;B 选项 “有效性规则” 用于限制字段输入范围;C 选项 “默认值” 是字段未输入时的预设值,均与表间关系约束无关。答案:B(数据库名)详解:定义表结构的核心是确定字段相关信息,包括 A 选项 “字段名”、C 选项 “字段类型”、D 选项 “字段长度”;
2025-12-26 19:02:16
427
原创 数据库课后题重点摘要
关系是集合,集合中的元素无序子查询不允许含有ORDER BY 和 DISTINCTWITH CHECK OPTION表示对视图进行更新操作系统自动加上视图定义中的谓词条件作用:简化用户操作;提供数据保密;保证数据的逻辑独立性;使用户能以多种角度看待同一数据;R:关系名U:组成该关系的属性名集合D:U中属性所来自的域DOM:属性向域的映像集合F:属性间数据的依赖关系集合。
2025-12-26 18:59:25
339
原创 关于static误区
static是 “类级成员” 的标志 —— 带static的成员属于类,不依赖对象;不带static的成员属于对象,必须通过对象使用。所以,“实例方法必须通过对象调用”“静态方法可以直接通过类调用” 的规则,本质上是由static关键字的特性决定的。有关系,而且是直接的因果关系。test()是被static修饰的静态方法display()是实例方法(没有static修饰)。静态方法属于类,不依赖任何对象实例即可调用;而实例方法属于对象,必须通过具体的对象才能调用。在静态方法test()
2025-10-31 21:02:23
224
原创 如何把字符串(String)转换为基本数据类型
两种方法的目的都是将字符串转成基本数据类型方法 1(parseXxx):直接一步转换,更简洁高效,推荐优先使用。方法 2(xxxValue()):需要先创建包装类对象,再拆箱,适用于已持有包装类对象的场景。本质上都是利用包装类作为 “桥梁”,实现字符串到基本数据类型的转换。
2025-10-19 10:52:46
215
原创 MySQL8.0.26-Linux版安装
tar -xvf mysql-8.0.26-1.el7.x86_64.rpm-bundl在这里插入代码片e.tar -C mysql。执行上述的SQL会报错,原因是因为设置的密码太简单,密码复杂度不够。我们可以设置密码的复杂度为简单类型,密码长度为4。登录到MySQL之后,需要将自动生成的不便记忆的密码修改了,修改成自己熟悉的便于记忆的密码。降低密码的校验规则之后,再次执行上述修改密码的指令。然后输入上述查询到的自动生成的密码, 完成登录 .Linux的版本为 CentOS7;修改root用户密码。
2025-10-11 19:39:28
184
原创 从接口概念到客达天下系统Apifox+DeepSeek接口测试实战
③ [] 用于访问数组元素(如 $.list[0] 取第一个元素,$..id 递归匹配所有 id)前端(如浏览器)通过调用接口来获取数据或执行操作。④ * 匹配所有元素(如 $.data.* 匹配 data 下所有子节点)是判断实际测试结果与预期结果是否一致的检查点,不一致则标。② . 用于访问子节点(如 $.data.name)点击“新建项目”,输入项目名称“在项目内,点击“新建接口”。数据(SELECT)。数据(CREATE)。数据(UPDATE)。数据(DELETE)。1.安装apifox。
2025-09-29 20:37:32
407
原创 9-10关于JS初学产生的问题
这句话描述的是一种动态渲染表格数据表格的内容不是一开始就写死在 HTML 里,而是通过 JavaScript 代码动态生成并展示。简单来说,就是先准备好数据(通常是数组或对象形式),再通过代码将这些数据 “填充” 到表格中,而不是直接在 HTML 中写这样的表格内容。用 JavaScript 代码做 “桥梁”,把数据转换成用户能看到的表格内容,而不是直接在 HTML 中写死内容。用户最终看到的表格和直接写在 HTML 里的效果一样,但开发者维护和更新数据会更方便。
2025-09-10 19:37:55
853
原创 9-4java记录
标识符通常由字母,数字,下划线,$组成,严格区分大小写。标识符可以表示变量名,类名,方法名。关键字不能做标识符,public。但是标识符不能由数字不能开头。int 1_age=1是错的。
2025-09-04 13:13:09
95
原创 9-2小记
一个java文件可以有多个class,运行时每一个class都会生成一个class文件。如果有,public 类名,必须和文件名保持一致。可以没有public class。
2025-09-02 21:53:03
108
原创 7-20 关于mysql
今天重新使用phpstudy发现mysql5无法启动,经过研究发现是3306端口被占用。于是修改端口,中间经历一些困难,包括但不限于重启,修改php,修改文件内容。即使修改成功也无法启动,虽然此时二者已经互不干扰还是无法启动。于是我去研究这连的到底是不是php里面的,经研究发现的确是。但是navicat是可以连接的,即使phpstudy没开。启发是,如果安装两个版本mysql一定要修改端口。由于前几天学数据库,所以单独下载mysql8.0。于是重启小皮,问题解决。
2025-07-20 23:48:32
221
原创 4-15记录(冒泡排序,快速选择排序)
简单选择排序的实质就是最后一个和第一个比较,小,就换位置,然后继续用最后一个数字和第二个比较,以此类推。但是算法不稳定,本来下划线的2在后面,但是经过算法后去了前面。
2025-04-15 21:02:28
182
原创 关于非递归算法和层序遍历
层序遍历:这个听的王道,简而言之就是用队列来实现,从左往右同级扫描,然后取出一个节点的同时,把他的子节点放入队列,直至队列为空。非递归算法,这就是用栈来实现,
2025-04-12 18:18:49
254
原创 4-10记录(
带哨兵的作用,把0的位置空出来,49>38,就先把38放到哨兵位然后把49放进原先38的格子里,然后把哨兵位的38后移一位。就算有两个49也要按照先后顺序放,即把比下划线的49大的数字往后移。
2025-04-10 20:45:54
190
原创 4-7记录(B+树查找及散列表)
如果查找9,从15往下遍历了3 9 后,找到9,但是还是得继续往下遍历6 8 9,如果只是在分支节点中找到想要的数,查找并没有结束,必须找到叶子节点下的记录。遍历失败过程:7<15,往下,7>3 并且<9,遍历下一层,7>6并且<8但是没有找到,查找失败。叶子结点在B树中指向最下一层(上层叫终端结点),在B+树中指向倒数第二层(上层叫分支结点),也可以通过指针p在最下一层进行顺序查找,遍历了1 3 6 8 后指向9,查找成功。必须找到最下面一层结点才算一次完整的查找。
2025-04-07 08:51:27
287
原创 4-6记录(B树)
借左子树,92的前驱是88,88的前驱是87,87是孩子去顶替88,88放在92前面。兄弟也不够借的时候,把父亲拉下来和左右子树一起合并,周而复始知道满足B树的合法特征。对于25,25的后继就是70,25后继的后继是71(中序遍历)只剩25,小于2,所以把父亲拉到25旁边,兄弟的70顶替父亲。转化成了前驱后继的删除。找左边右下或者右边左下。兄弟子树也不够借的情况。
2025-04-06 20:43:09
358
原创 4-3记录(B树)
如果要加的时候已经满了,就把中间的提到上一层当父节点,左右分开当子树。王道ppt写的是[ ]向上取整的意思。n个关键字必有n+1个失败结点。
2025-04-03 21:32:48
195
原创 4-1记录(查找方法和平衡二叉树)
关于为什么是两个n:看了豆包但是不太懂,大致意思就是说比结点小的数到左边进行对比,比结点大的数去右边进行对比,简单的将上图左右划一刀斜线,正好比较2n次。成功的ASL和失败的ASL算法不太一样,失败就是遍历所有,答案是固定的,成功的概率是不一定的,从第一个到最后一个都有可能。由此,折半查找比顺序查找时间复杂度少,但并不是谁一定比谁更优秀。折半查找失败的标志是,low指的比high指的位序大。让要删除的结点的右子树的左孩子顶替这个位置。上面说的是成功的和失败的平均查找长度。顺序查找的时间复杂度就是O(n)
2025-04-01 20:41:05
224
原创 3-31记录(行主序,列主序回顾,KMP的next数组以及中缀转后缀)
对于A[i][j],假设数组维度为,基地址为Base,元素大小为sizeA[1][1]在A[2][3]。i*列数对于A[i][j]A[1][1]在A[2][3]。j*行数。
2025-03-31 21:52:10
244
原创 3-29记录(优先遍历,最短路径,AOV,拓扑排序,最短时间)
对于深度优先和广度优先来说,调用几次BFS/DFS取决于从这个点开始遍历的时候,这个点有没有去其他任何一个点的路径。从画错号的节点里面找距离最短的,然后从这个结点出发修改其他错号节点的距离和前驱。按照迪杰斯特拉算法最短距离是7,但是事实是10-5=5,所以不适用于负权图。当走完一遍后,检查有没有false的节点,相当于寻找非连通图的其他部分。d[]是最短路径长度,从谁出发的就有谁的路径长度加一。Dijkstra算法(迪杰斯特拉算法)path[]记录前驱节点,从谁出发的。true表示访问过了,所以就跳过。
2025-03-29 18:57:16
212
原创 3-27记录(图和图的存储)
所有节点 入度之和等于出度之和且数值上等于弧。生成子图:包含所有顶点但是边是边集的子边。有向图:某节点:出度+入度=度。无向图:节点个数=度*2。有向完全图中,n个顶点。
2025-03-27 07:43:03
177
原创 3-26记录(树的存储结构及树,森林,二叉树的转换)
双亲表示法优点找 父节点很方便 缺点:找孩子不方便,需要遍历。因此适用于找父节点多 找孩子少的情景,比如并查集。树的先根遍历序列和这棵树的二叉树的先序遍历相同。上述几幅图也可以转化成二叉树再进行相对应的遍历。优点:找孩子很方便,因为直接通过链表就能找到。适用于找孩子比找父节点多的情节。缺点:找父节点很不方便。
2025-03-26 14:45:29
234
原创 3-10记录(前缀中缀后缀互相转化及计算方法以及特殊矩阵压缩存储)
根据上述图片,数组大小该设置成n*(n+1)/2,所以最后一个数组元素下标应该是n*(n+1)/2-1。策略:只存储下三角和主对角线,按照行优先原则将各个元素存在一维数组。存储策略:按照行优先或者列有优先只存储带状部分。元素移到一维数组,并在最后一个位置存储常量c。aij之前的行有多少个元素。
2025-03-10 20:04:00
157
原创 3-5记录
在上述代码中,想要判断队列是否为空,只需要判断front和rear是否指向同一个节点,也可以通过判断头结点的next指针是否指向NULL。栈的应用,括号匹配问题。
2025-03-07 12:51:20
160
原创 3-4记录(顺序栈和顺序队列增删改查)
每一次出队的都是front指针所指向的元素,并且队头指针会每次往后移一位,当队头指针和队尾指针再次指向同一个位置的时候此时就说明这个队列已经被取空了。同理,如果上述两句顺序颠倒,简化后的代码为x=S.data[--S.top];当栈中没有元素的时候,top栈顶指针为-1,因此可以通过这个来判断栈是否为空。如果上述两句顺序颠倒,简化后的代码则变为S.data[S.top++]=x;同时判断栈满的条件也不一样,在这种情况下栈满的条件为top==MaxSize。//声明栈时分配内存。
2025-03-04 21:26:03
312
原创 2-27记录
顺序存储结构可以通过变量length来求表长,定位操作也可以直接索引来查找,时间复杂度为O(1),链式存储求表长需要遍历整个链表,时间复杂度为O(n),定位操作也需要遍历整个链表,时间复杂度是O(n)。顺序存储的内存一开始是分配好的,想要改变需要重新分配内存并且复制数据,链式存储可以动态分配,不需要连续的内存空间,所以顺序存储在存储上不够灵活。由于数据存储在连续的内存中,可以通过索引直接访问任意位置的元素,可以随机存取,链式存储无法随机存取,只能遍历。,实现创建一个顺序表,并实现打印顺序表的功能。
2025-02-27 20:28:40
1283
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅