- 博客(8)
- 收藏
- 关注
原创 二分查找的应用
说是使用了二分查找,其实只是框架和二分查找一样,但是left和right的语义却不同。或者我们换一个思路来看一看之前的程序,看一看,如果target不在数组中,程序结束时,left和right的值是什么,以及为什么left和right的值会有这样的性质。先说结论,如果target的值不在数组中,left(或者right,或者left和right)的值就会指向一个可以让值为target的数插入,而且不会破坏数组有序性的位置。
2025-12-21 22:38:34
669
1
原创 二分查找与程序语义与循环不变量
其实不止是二分查找算法,所有算法和工程都是如此。你要做的,就是准确定义自己的变量和函数,然后在算法的执行过程中,不停的维护变量的语义,正确的根据函数的语义实现函数和使用函数,然后算法自然就正确了。掌握了变量的语义对于理解算法的细节很关键,掌握函数的语义对于理解各种递归的算法有很大的帮助。例如,你一定了解二叉树的中序遍历的过程,其定义就是以中序遍历左子树,访问根节点,以中序遍历遍历右子树。结合下面的递归算法,你再看看这个算法描述,看看这个算法中函数的名字,并根据这个函数的名字明白它的语义。
2025-12-21 22:35:32
954
原创 f(x)区间内极限存在,连续可导和n阶可导的意义和联系
x0x_0x0Ux0ϵUx0ϵ很简单,只要fxf(x)fx在x0x_0x0有一个函数值fx0f(x_0)fx0,就是在一点有定义。而只要在区间Ux0ϵUx0ϵU˚x0δU˚x0δ内处处都有函数值,就是在区间有定义。这个定义完全可以是人为构造的。类似的,某点处有定义,推广到去心邻域内的其他点满足该条件,那就是该点去心邻域内有定义,两者加起来就是该点邻域内有定义。
2025-12-05 17:00:10
579
原创 西工大计算机系统基础实验lab1 datalab中的未定义行为
明确的语义会给出明确的结果,如果一条c语句是符合C语言标准的,那么任何的编译器都要按照C语言的规定来编译这个语句。如果编译器不按照手册约定来生成汇编代码,那么就没有实际上的C语言了。但是如果遇到C语言中没有规定的情况,那么编译器就可以自由发挥。既然C语言中没有规定这种情况应该怎么做,那我怎么做都不算错,这就会导致使用不同的编译器编译出不同的效果了。引入未定义行为还有一个好处是, 给约定的实现方式带来一定的自由度。
2025-12-05 16:23:32
630
3
原创 西工大noj03 数据类型大小及范围
每一个C/C++整型,都有一个内存大小和数值范围。例如:int,内存大小为4,数值范围为(-2147483648,2147483647)。如下表,输入选择d,输出对应数据类型的大小及范围。图片待插入输入一个d,输出对应数据类型的内存大小及数值范围(最小值、最大值),用逗号间隔。这道题已经明确了各个数据类型的长度,所以可以直接使用位运算构造这些值。这就需要计算机系统基础的二进制和补码知识了,很快你也会在计算机系统基础实验课的实验一使用这些位运算。
2025-04-10 14:21:39
542
原创 西北工业大学NOJ C语言程序设计 2025最新西工大NOJ答案 代码详细解析
本项目起源于考研时,为了上机考试而重写NOJ之时。写完发现题目已经和大一时候写的完全不一样了,加了很多专业融合的题目,让各个专业的同学都能再C语言程序设计课程中找到归属感。出发点虽好,但是该说不说,有的题目和编程融合的不是很好,用来熟悉C语言语法是可以,但是对于计算机专业的同学来说,这又显得不足。本项目的目的是给计算机学院,或者对编程有一些兴趣的同学详细地讲一下其中具有编程思维的题目,以及编程中的一些习惯和方法,为后来的学习做准备。
2025-04-09 18:02:37
2259
原创 25考研西工大计算机专硕801上岸经历贴
考研很难,千军万马过独木桥,必然有人落水,但是始终保持清醒和放松和适度的紧张,多关系身边的事和人,不要因为考研而和世界断联,事实上,考研很需要调平心态,考场上很需要稳定心态。同时,复试千万别像我一样松懈,复试分数非常关键,自己拿笔算一下就知道了。我的经历可能无法复制,我自己都没法再走一遍,加上今年总感觉运气特别好,所以才考出了这个令人意想不到的成绩。不过我的经历之独特,或许也恰好证明考研并不一定要按部就班地走别人的路,要对自己的情况有把握和掌控,你一样能走出自己的路。最后可以来我的博客。
2025-04-08 17:06:58
1423
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅