- 博客(92)
- 收藏
- 关注

原创 新年flag
在新的一年里,我希望能够积极参与开源项目,为社区做出自己的贡献。我计划选择一个感兴趣的研究方向,深入学习相关的理论知识,参与到导师的研究项目中,争取发表一篇学术论文,为自己的学术生涯打下坚实的基础。在新的一年里,我计划保持规律的作息时间,合理安排学习和休息的时间,坚持每周进行适量的运动,保持良好的饮食习惯,以保持身心健康。项目实践:我希望在新的一年里能够参与更多的项目实践,锻炼自己的团队合作能力和项目管理能力。我计划参加更多的课程和培训,积极参与项目实践,不断学习新的编程语言和技术,以提高自己的编程水平。
2024-01-03 21:26:24
398
原创 计算方法实验六 数值积分
但是,如果子区间的数量不够多,或者函数在某些子区间上变化较大,可能会导致计算结果的误差较大。为了解决这个问题,可以增加子区间的数量,或者使用自适应方法,根据函数的变化情况来调整子区间的数量。通过这些实验,我掌握了数值积分的基本原理和计算方法,并且了解了不同方法的优缺点,这对于解决实际问题具有重要的参考价值。这种方法的优点是计算简单,适用于低次多项式的积分,但对于高次多项式的积分误差较大。在本次实验中,我们学习了三种数值积分的方法,包括差值积分法、复化积分法和复化梯形公式。评阅日期_____________
2025-05-04 23:06:18
1173
原创 测试基础笔记第十九天
借助工具、代码,模拟客户端发送请求给服务器,借助断言自动判断 预期结果和实际结果 是否一致!HTTP:(HyperText Transfer Protocol)超文本传输协议,是一个基于请求与响应模式的、应用层的协议,也是互联网上应用最为广泛的一种网络协议特征:支持客户端/服务器模式简单快速灵活无连接无状态**由开发人员编写,描述接口信息的文档。**开发团队按接口文档进行开发工作,并要一直维护遵守。
2025-05-04 23:03:43
975
原创 计算方法实验五 插值多项式的求法
Newton插值算法相对于Lagrange插值算法的优点是构造插值多项式的计算过程简单,可以通过递推公式一次性得到所有的差商。在实际应用中,根据实验数据的特点和求解的需求,选择合适的插值算法进行计算,并注意处理可能出现的问题,确保插值结果的准确性和稳定性。而在求解插值的时候,需要根据需要插值的点的横坐标,计算出对应的纵坐标。2.2基于向量+矩阵进行计算考虑动态增加插值结点,比如已有x0,x1,再增加x2时,依次计算f[x1,x2],f[x0,x1,x2][ 1, 2]放到y 的第2 个元素上,。
2025-05-03 23:10:16
664
原创 测试基础笔记第十八天
pytest:python中的一种单元测试框架。为什么学习pytest?能阻止多个用例去执行方便实现参数化能够生成测试报告安装安装: pip install pytest验证: pip show pytest#导包#打开浏览器#打开页面#case02:登录失败(用户名为空)self.driver.find_element(By.LINK_TEXT, “登 录”).click()#case03:登录失败(密码为空)
2025-05-03 23:07:08
1027
原创 计算方法实验四 解线性方程组的间接方法
其次,我注意到间接方法的精度较高,能够得到比较准确的解。总体来说,间接方法是一种简单高效、精度较高的解线性方程组的方法,对于数学问题的求解也具有一定的推广价值。通过这次实验,我不仅学到了解线性方程组的间接方法,还深入了解了矩阵运算的原理和应用,对数学问题的求解能力也有了一定的提升。取三个不同初值,分别用雅可比法和高斯-塞得尔法求解,用表格记载求解过程,并分析迭代初值、迭代公式对迭代的影响。迭代法程序简单,但有时工作量较大,在有限步内,得不到精确解,适宜系数矩阵阶数较高的问题。教师签名________
2025-05-02 23:42:36
843
原创 计算方法实验三 解线性方程组的直接方法
Gauss消元法是一种基础且常用的线性方程组求解方法,它通过消元和回代的过程,将线性方程组化为一个上三角矩阵,进而求解出方程组的解。这种方法适用于各种情况下的线性方程组,但当矩阵的某个主元接近于零时,可能会导致算法的失效或数值不稳定的问题。因此,在应用Gauss消元法时,需要对矩阵的特性进行分析,避免出现这种情况。对上述算法的改进,其中列主元消去法较为常用:在第i步,从第i列的第i行至最后一行中选取绝对值最大的元素(注意,不是该列的所有元素,而是部分元素),通过行互换,将其调到主元位置,然后再做消元。
2025-05-02 23:37:58
652
原创 计算方法实验二 一元非线性方程求根的算法
根据牛顿迭代法的收敛性质,如果初始点选择得当且函数具有一定的光滑性,牛顿迭代法的收敛速度是二次的,即每次迭代的近似解的有效数字位数会翻倍。不同的迭代初值可能会导致求得的根有所不同,因此初始值的选择对于求根过程的精度和收敛性有一定影响。如何得到一个好的迭代公式,是工程需要考虑的问题。迭代效果(指迭代的敛散性、收敛的速度)与迭代初值、迭代公式的收敛性有关。迭代法求根,参数为迭代初值、迭代函数、绝对误差限、最大迭代次数,成功标志,根。迭代法求根,参数为迭代初值、迭代函数、绝对误差限、最大迭代次数,成功标志,根。
2025-05-01 00:00:55
871
原创 实验六 文件操作实验
1)以写方式打开file1,以读方式打开file2文件,利用lseek()将file1的指针定位到文件尾部,再将file2写入到file1,实现文件合并。if((p=open(argv[1],O_RDONLY))==-1) //以只读方式打开文件。通过本次操作系统文件操作实验,我对文件的打开、读写操作以及加密解密的实现有了更深入的了解。while(read(p,&ch,1)==1) //每次读一个字符到ch。// 写入解密后的字符。3)以附加方式打开file1,以读方式打开file2,实现文件合并。
2025-04-29 23:20:33
1096
原创 测试基础笔记第十六天
UI:User Interface,简称UI,用户界面是系统和用户之间进行交互和信息交换的媒介UI自动化测试:使用程序、脚本对系统界面体现的功能和数据信息展示等进行的测试技术为什么要自动化测试:大量的版本需要回归测试手工回归测试效率比较低测试工程师价值得不到体现。
2025-04-29 23:18:54
1464
原创 实验五 内存管理实验
else if(freeblock[i].state==1 && freeblock[i].size==size)//申请空间正好等于空闲空间。if(freeblock[i].state==1 && freeblock[i].size>size) //申请空间小于空闲空间。printf("缺页次数:%d 缺页率:%d/%d\n",missingCount,missingCount,pageNum);setfree()函数的功能是将释放的内存空间标记为空闲状态,并根据释放空间的位置和大小,进行合并操作。
2025-04-28 23:17:54
1029
原创 测试基础笔记第十五天
说明:集合中的数据是没有重复的, 主要应用列表中的数据去重说明:把具有独立功能的代码块组织为一个小模块,在需要的时候调用作用:对具备相同逻辑的代码进行封装, 提高代码的编写效率, 实现对代码的重用语法:def 函数名(参数1, 参数2…):函数封装的代码,可以使用传递进来的参数pass说明:1.def是英文define 的缩写2. 函数名最好能够表达函数内部封装的代码的功能, 方便后续的获取调用[见名知意]3. 函数名命名遵循标识符命名规则: 字母, 数字, 下划线, 不。
2025-04-28 23:15:15
983
原创 实验五 内存管理实验
else if(freeblock[i].state==1 && freeblock[i].size==size)//申请空间正好等于空闲空间。if(freeblock[i].state==1 && freeblock[i].size>size) //申请空间小于空闲空间。printf("缺页次数:%d 缺页率:%d/%d\n",missingCount,missingCount,pageNum);setfree()函数的功能是将释放的内存空间标记为空闲状态,并根据释放空间的位置和大小,进行合并操作。
2025-04-27 23:05:03
953
原创 测试基础笔记第十四天
说明:列表(list)是 Python 中使用最频繁的数据类型, 在其他语言中通常叫做数组, 专门用来存储一组数据注意:字典中的键一般都使用字符串,并且键名不能重复(如果重复原数据会被覆盖)说明:元组和列表一样,都可用于存储多个数据,不同之处在于元组的元素不能修改注意:元组中只包含一个元素时,需要在元素后面添加逗号data = (1,)
2025-04-27 22:42:01
1288
原创 实验四 进程调度实验
进程调度的目标是使系统的资源得到最优的利用,提高系统的吞吐量和响应速度。printf("\n=====================先来先服务算法FCFS=====================\n\n");//计算带权周转时间。printf("\n=====================短作业优先算法SJF=====================\n\n");printf("\n=====================时间片轮换算法RR=====================\n\n");
2025-04-26 22:54:26
922
原创 实验三 进程间通信实验
当用户在键盘上按下Ctrl+C键时,会触发SIGINT信号,从而调用信号处理函数func,将k的值设置为0,退出循环。此外,我还发现了管道在父子进程之间的传递性,即父进程可以通过管道向子进程传递信息,子进程也可以通过管道向父进程传递信息。通过这个实验,我不仅加深了对进程间通信的理解,还学会了如何使用管道来实现进程间的双向通信。在进行操作系统进程间通信的实验中,我通过使用管道来实现父进程和子进程之间的双向通信。5、在父进程中用pipe()建立一条管道线,往管道里写信息,两个子进程接收父进程发送的信息。
2025-04-25 22:38:19
776
原创 实验三 进程间通信实验
当用户在键盘上按下Ctrl+C键时,会触发SIGINT信号,从而调用信号处理函数func,将k的值设置为0,退出循环。此外,我还发现了管道在父子进程之间的传递性,即父进程可以通过管道向子进程传递信息,子进程也可以通过管道向父进程传递信息。通过这个实验,我不仅加深了对进程间通信的理解,还学会了如何使用管道来实现进程间的双向通信。在进行操作系统进程间通信的实验中,我通过使用管道来实现父进程和子进程之间的双向通信。5、在父进程中用pipe()建立一条管道线,往管道里写信息,两个子进程接收父进程发送的信息。
2025-04-24 22:28:01
843
原创 实验二 多线程编程实验
通过使用pthread库中的函数,如pthread_mutex_init()和pthread_mutex_lock()等,我可以对关键代码段进行上锁,使得同一时间只有一个线程可以访问共享资源。通过使用pthread库中的函数,如pthread_cond_init()和pthread_cond_wait()等,我可以实现线程的等待和唤醒操作,以实现线程间的同步和协作。// 创建售票员线程。线程一先执行,打印"hello",然后释放锁,线程二获取到锁,打印"world",最后两个线程结束。
2025-04-23 22:29:56
1155
原创 实验一 进程控制实验
5. 编程创建2个子进程,子进程1运行指定路径下的可执行文件(如:/home/student/welcome.out),子进程2暂停10s之后退出,父进程先用阻塞方式等待子进程1的结束,然后用非阻塞方式等待子进程2的结束,待收集到二个子进程结束的信息,父进程就返回。通过实验中的信号处理,我们可以向进程发送信号,从而实现对进程的控制。先打印父进程 然后创建第一个子进程p1,然后父进程创建第二个子进程p2,如果不想让父进程在子进程结束之前结束,可以用wait(0)让父进程等待子进程结束,之后父进程再结束。
2025-04-22 22:23:49
979
原创 实验五:分枝限界法
算法分析: Dijkstra算法的时间复杂度为O(n^2),其中n为节点的个数。由于使用了优先队列H来优化算法,堆的插入和删除操作的时间复杂度为O(logn),因此总的时间复杂度为O(nlogn)。然后遍历该节点的相邻节点,更新其距离和前驱节点。创建一个优先队列,用于存放待扩展的节点,初始时将起始节点加入队列中。如果通过扩展节点能够获得更短的距离,则更新该节点的距离和前驱节点。初始化起始节点的距离为0,其他节点的距离为无穷大。遍历该节点的相邻节点,更新其距离和前驱节点。将更新后的节点加入优先队列中。
2025-04-21 20:08:57
1139
原创 测试基础笔记第八天
说明: MySQL 是一个关系型数据库管理统,目前属于 Oracle 旗下产品, 目前为止 MySQL 社区版是可以免费使用的特点:开源/免费/跨平台(Windows/macOS/Linux)/跨语言(Java/Python…)
2025-04-21 20:04:31
589
原创 实验四:回溯法
在每一次操作中,需要检查边的数量,因此总体的时间复杂度为O(m^n * E),其中E表示边的数量。算法的主要思想是尝试为每个顶点选择一个颜色,然后递归地为剩下的顶点选择颜色,直到所有顶点都着色完毕。设下图G=(V,E)是一连通无向图,有3种颜色,用这些颜色为G的各顶点着色,每个顶点着一种颜色,且相邻顶点颜色不同。在回溯函数中判断当前顶点是否可以安全地选择某个颜色,如果可以,则将该颜色赋给当前顶点,并继续递归地为剩下的顶点选择颜色。如果所有顶点都已经着色完毕,找到一个新的解,将解的数量加1,并打印出该解。
2025-04-20 23:32:39
735
原创 实验三:动态规划法
对于下列所描述的问题,给出相应的算法描述,并完成程序实现与时间复杂度的分析。按给定的一组测试数据对根据算法设计的程序进行调试:6个矩阵连乘积A=A1×A2×A3×A4×A5×A6,各矩阵的维数分别为:A1:10×20,A2:20×25,A3:25×15,A4:15×5,A5:5×10,A6:10×25。然后使用两个嵌套循环,从矩阵个数为2开始,依次求解m[i][j]和s[i][j],其中m[i][j]表示从第i个矩阵到第j个矩阵链的最小乘法次数,s[i][j]表示从第i个矩阵到第j个矩阵链的最优划分位置。
2025-04-19 23:22:33
671
原创 实验二:贪心算法
7.遍历剩下的活动数组,如果当前活动的开始时间晚于等于lastEnd,即活动不与已加入的活动冲突,将该活动加入最大相容子集,并更新lastEnd为该活动的结束时间。3.定义了一个活动安排函数activityArrangement,接受一个活动数组和活动个数作为参数,并按照活动结束时间排序后进行活动安排。cout << "请输入第"<<i+1<<"次活动信息(名称 开始时间 结束时间) : ";遍历活动数组的时间复杂度:在活动安排函数中,遍历了剩下的活动数组,时间复杂度为 O(n),其中n为活动个数。
2025-04-18 23:27:17
467
原创 实验一:分治与递归
在生成数组a的过程中,有两个嵌套的循环,每个循环的次数都是n/2,因此循环次数总共为n/2 × n/2 = n^2/4,所以时间复杂度为O(n^2)。另外,代码中还有一个determine函数,该函数的时间复杂度为O(logn),因为每次递归都将n除以2,直到n为偶数。首先,判断n是否为2,如果是,则直接生成对阵表。首先,通过输入参赛人数n,判断n是否合法(是否为2的幂次方),如果不合法则输出错误信息。如果n不是2,递归调用roundrob函数,将n除以2传入,并分成两个子问题,分别解决。
2025-04-18 23:25:51
914
原创 实验五 8255和LED数码管显示实验
1.实验台上的七段数码管为共阴极,码段采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。
2025-04-17 22:40:10
1143
原创 实验四 中断实验
1.本实验用TPC-ZK实验系统的USB接口,USB接口实验箱固定接到了PC机主片中断控制器8259的IRQ3上,即进行中断实验时,所用中断类型号为0BH,编程时要根据0BH中断类型号设置中断矢量。中断屏蔽码,二进制表示为11110111,用于设置8259A中断控制器的中断屏蔽寄存器。
2025-04-16 22:27:58
898
原创 实验三 I/O地址译码
实验电路如图1所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器, Y0:280H~287H,Y1:288H~28FH,Y2:290H~297H,Y3:298H~29FH,Y4:2A0H~2A7H,Y5:2A8H~2AFH,Y6:2B0H~2B7H,Y7:2B8H~2BFH。call delay;call delay;设置ah为9,准备调用21h中断显示字符串。
2025-04-16 22:23:04
701
原创 实验二 两个多位十进制数相加实验
功能:接收用户输入并存入相应变量,input_data1和input_data2操作类似。data1、data2、data3:分别存储输入数据和计算结果,有特定初始化。实现:从后往前按ASCII码计算,处理进位并转换结果存入data3。将键盘输入的两个5位十进制数相加,在屏幕上显示相加的结果。提示字符串:如mess1、mess2等,用于显示提示信息。利用21h中断的字符输出功能,先输出回车符再输出换行符。流程:初始化后循环执行输入、计算、显示、询问操作。功能:输出询问字符串并接收用户输入返回。
2025-04-15 20:55:50
504
原创 实验一 字符串匹配实验
编程实现:从键盘分别输入两个字符串,然后进行比较,若两个字符串的长度和对应字符都完全相同,则显示“MATCH”,否则显示“NO MATCH”。jmp again;jnz noequ;定义一个名为crlf的宏,用于输出回车(0DH)和换行(0AH)定义一个字符串常量,用于提示按任意键继续或按ESC键退出。定义一个缓冲区用于存储输入的第一个字符串,最多21个字符。jnz noequ;定义一个字符串常量,用于提示输入第一个字符串。定义一个字符串常量,用于提示输入第二个字符串。
2025-04-14 18:55:21
802
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人