- 博客(40)
- 收藏
- 关注
原创 力扣11盛水最多的容器
由于左边界较⼩,决定了⽔的⾼度。如果改变左边界,新的⽔⾯⾼度不确定,但是⼀定不会超 过右边的柱⼦⾼度,因此容器的容积可能会增⼤。◦ 如果改变右边界,⽆论右边界移动到哪⾥,新的⽔⾯的⾼度⼀定不会超过左边界,也就是不会 超过现在的⽔⾯⾼度,但是由于容器的宽度减⼩,因此容器的容积⼀定会变⼩的。
2024-08-07 20:47:38 137 20
原创 堆的相关知识点
大堆:最上面的数字是最小的,越往下越大小堆:最上面的数字是最大的,越往下越小堆的复杂程度:由错位相减我们可以知道T(n)= n - log(n-1) = n,所以建堆的复杂程度为O(N)
2024-07-23 08:34:16 477 11
原创 力扣283.移动零
类似分块区间,可以将数组划分为几个区间,cur是当前,dest是目的地。讲一下解题思路:和快速排序的思想差不多,就是两个指针差不多。这里放一下题目的地址。他们之间的区间是0。
2024-07-22 09:16:51 189
原创 树(进阶相关知识点)
目录 结点的度:某一个结点所含有字数的个数叶节点:最后一个结点非终端节点:不是叶结点 兄弟结点:亲兄弟结点树的度:最大节点的度层次:根为第一层,根的子结点为第二层,以此类推森林:互不相交的树被称为森林最常用的表示方法:左孩子右兄弟表示方法, 二叉树 树是一种非线性的结构,树是递归定义的,他的根在上,叶在下树是递归定义的,并且子树之间不能有交集,否则就是图 二叉树二叉树在我们的日常生活中运用的比较广泛1.二叉树的度都小于等于22.二叉树的子数有左右之分,不能颠倒所以二叉树是有序树;1. 满二叉树:
2024-07-07 12:36:44 297 4
原创 队列的相关知识
队列的性质与特征性质:一种先进先出的线性表特征:FIFO(先进先出)实现:用数组和链表的都可以例子:在生产者消费者模型用到了循环链表模型:未来曲风队列是满的还是不满的,我们多加一个空间保证rear+1是front。
2024-06-29 20:59:22 263
原创 有效的括号
需要我们判断括号两边是不是相等,但括号不匹配的情况有很多种。比如说左边的大括号与右边的中括号就是不匹配。但是我们可以直接可以用数学思想里面的正难则反去判断。
2024-06-04 17:41:07 179
原创 顺序表和链表的区别
我们可以理解为有一个学校,学校需要用大巴车去拉一批人,由于顺序表是连续的,链表是不连续的,就会影响到 也就是说我们这个大巴车呢 ,可能他们会从一个班的1号开始,把整个班全部拉完。绝大多数情况下从硬盘中或内存给他拉到高速缓存区或寄存器到CPU。但是这个CPU在我们电脑里面就是很少。如果我们拉一批进了造成缓存污染。这里比较重要的一个点就是这个。
2024-05-31 16:51:47 127
原创 随机链表的复制
第一部分空间,就是把他的复制后的样子给他创建出来,然后第二部分的样子就是处理一下他的这个随机值。然后随机这里有个点,就是它随机值指向的不能是他原本的那个。那个地方是得要是他复制过的,然后第三部分就是。第三部分就是我们把它取出来,这里我们把它取出来之后呢,这里我们没有哨兵位,所以我们直接从头开始尾插,然后我们这里面是没有把它还原的,可以还原一下。
2024-05-29 15:27:10 158
原创 时间复杂度与空间复杂度
在里面的的时间复杂度是O(N^2)遍历一次O(N),这里面两个循环,所以是O(N)*O(N)(其实只是可以这么理解)当然也可以理解为嵌套都是这样,如果三次嵌套的话就是O(N^3),不用这样的话效率就降低;了,如果你这么工作的话,公司一个会先把你release的际中我们计算时间复杂度时,我们其实并不一定要计算精确的执行次数,而只需要在这里我们只看他的最高次数。
2024-05-23 15:01:01 329 1
原创 fopen与fclose函数
⽂件在读写之前应该先打开⽂件,在使⽤结束之后应该关闭⽂件。其中最主要的是fclose有fopen就有fclose。
2024-04-10 14:40:13 194 1
原创 realloc函数
这个函数调整原内存空间⼤⼩的基础上,还会将原来内存中的数据移动到 新 的空间。realloc函数的出现让动态内存管理更加灵活。这个函数可以将我们的动态内存的大小改大或者改小。情况2:原有空间之后没有⾜够⼤的空间。情况1:原有空间之后有⾜够⼤的空间。返回值为调整之后的内存起始位置。
2024-04-09 19:05:20 66
原创 free函数
C语⾔提供了另外⼀个函数free,专⻔是⽤来做动态内存的释放和回收的,指向的空间不是动态开辟的,那free函数的⾏为是未定义的。是NULL指针,则函数什么事都不做。这两个代码一般同时出现。
2024-04-09 18:53:07 230
原创 枚举类型的声明
这些可能取值都是有值的,默认从0开始,依次递增1,当然在声明枚举类型的时候也可以赋初值。枚举类型的声明与结构体相似,但是每个枚举常量都是由。其中的纸被称为枚举常量。
2024-04-03 08:25:36 150 1
原创 结构体的基础概念以及实现
但当我们在存储最后的时候,我们所算出来的必须得要是它最大对齐的整数倍,但是它这个最大对齐数是它类型中的最大的字节数与他所规定的最大的最小值,比如说在VS中,它的这个对齐数是8,但是我们的最大的是int类型,那int类型跟8比,那肯定就是int小,就是取小的就是4,所以说即便是最后只存存到了13的位置,但是我们必须得要取它的整数倍,就是16。所谓的结构体自引用并不是像递归一样在里面所衔接,不然的话它的大小会是无穷的大,很不合理,那我们就是自引用的时候,引用的是它的这个指针。,但是你一定听说过段位。
2024-04-01 14:40:09 281
原创 浮点数的存储
根据国际标准IEEE(电⽓和电⼦⼯程协会) 754,任意⼀个⼆进制浮点数V可以表⽰成下⾯的形式:V = (−1) ^S *M ∗ 2^E• (−1)S 表⽰符号位,当S=0,V为正数;当S=1,V为负数• M 表⽰有效数字,M是⼤于等于1,⼩于2的•E 表⽰指数位
2024-03-30 14:08:42 643
原创 strcmp函数
这个函数是比较两个字符串的大小,比较的方法是用对应字符串上的ascll码值来比较这个函数它是会返回一个整形,你可以理解为第一个数和第二个数相比较不过这个比较的是,对应位置上的字母会有大小写之分的比如说比较abcd和abce你可以理解为这个两个相比较,它就是d和e相比较,但是很明显D的ascll值要比E的acsll值要大,所以说它会返回一小于0的,相反的话,它也会等于或者说是大于这个是结果通过结果我们能知道他们对应位上的这个d的值要比d的值小,所以说它返还了一个负数。
2024-03-28 15:25:18 324 1
原创 strcat 函数(追加函数)
今年喜欢时代少年团,那么我们想要将马嘉祺和刘耀文的名字写在一起,那么就可以用strcat函数。为什么方便大家去理解,这里直接讲解这个函数的使用方法,这个函数是字符串的追加。.传过去地址dest,src都需要有\0,不然字符串无法追加。以上就是这个函数的内部的内部的样子。那么这个函数的内部是什么样子呢。
2024-03-28 11:36:42 335 1
原创 qsort函数的最全面讲解(下一章出模拟实现)
使用方法,这里直接用代码演示首先就是要用的库函数,需要用到<stldib.h>函数看,这个数组就帮我们所排序好了。
2024-03-16 12:56:59 572
原创 关于c语言中的知识易错点
EOF){ }//这里的a是自己定义的,EOF指的是-1。9.在软件工程中有一个名词叫做高内聚低藕合,表达每个函数间的连续性很低,每个函数都有各自的工作,对彼此的联系不是很大。8.arr[][3] = { (1) , (2) , (2.3) } ,以此举例,在二维数组中有几个括号代表有几行。9.在C99中引入一个变长数组,而它在的长度在运行时确定,并且注意,是一定在运行时确定。7.函数内的复合语句的变量只在本函数的复合语句内有效。10.形参可以是变量,函数,常量,也可以数组。
2023-12-31 12:49:42 298
原创 c语言笔记(初学者推荐)-----time函数
如果time是null则返回这个时间的差值,非null的的差值会放在指向的内存带中去。原型 time_t time(time_t*timer)//简易了解一下就可以。time函数的反回值1970年1月11日,可以用32/64位整数表达式。时间戳来创造一个随机数,一般和srand函数来使用。为了节省大家的时间,我将相关的重点用蓝色的标记了。返回类型 time-t。所需头文件:time.h。
2023-12-24 19:47:17 20
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人