![](https://i-blog.csdnimg.cn/direct/3610d3cce48f4af1a9f07da08f15ab07.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
C语言做题
记录C语言做题
Dilute816
这个作者很懒,什么都没留下…
展开
-
链表的回文结构
将逆置后的链表与未逆置的链表挨个比较,若不同,则不对称。只要走到rmid或者A下一个结点为空时结束比较。这就是找链表中间结点,与逆置的结合问题。回文结构就是判断这个链表是不是对称的。右奇数链表的对称,也有偶数链表的对称。原创 2024-04-24 20:19:00 · 189 阅读 · 0 评论 -
消失的数字(力扣)
类似于找单身狗的问题,0^任何数都等于被异或的那个数,相同的数异或为0。原创 2024-04-24 09:47:53 · 325 阅读 · 0 评论 -
反转链表(力扣)
步骤:将n2的next指向n1,再n1放到n2的位置,n2放到n3的位置,循环到最后一个指针的指向反转,此时n2为空,n3为未知区域,因此再n3移动时,要加一个if语句判空,不然代码会出现错误,最后头节点变为了n1,因此时返回n1结点。n1置空,n2置为头节点,n3置为头节点的下一个节点。思路:设三个指针,画图求解。原创 2024-04-24 18:28:48 · 380 阅读 · 0 评论 -
返回倒数第k个节点(力扣)
思路:快慢指针,fast指针先走k步,然后快慢指针一起走。原创 2024-04-24 17:37:25 · 402 阅读 · 0 评论 -
轮转数组(力扣)
时间复杂度(往往考虑最坏的情况)为O(n^2) (最坏情况下 K*M =(N-1)*N)先前n-k个逆置,在后k个逆置,最后整体逆置。原创 2024-04-24 10:45:15 · 552 阅读 · 0 评论 -
相交链表的判断(leetcode)
思路二 :先不顾两条链表的长短,先走到尾结点的链表跳到另外一个链表的头节点,这样也实现了先走差距步的效果。两条链表难免会出现长度不一样的情况,先让长的链表先走差距步。思路一:先判断两个链表的最后一个结点是否相同,若相同,则会有结点。来自力扣题解中一位大神的思路!原创 2024-04-25 10:31:44 · 705 阅读 · 0 评论 -
随机链表的复制
【代码】随机链表的复制。原创 2024-04-29 14:28:29 · 127 阅读 · 0 评论 -
判断月份的天数
这里唯一注意的就是闰年的判断,以及二月份的天数的变化。原创 2024-04-18 20:39:08 · 376 阅读 · 0 评论 -
变种水仙花
【代码】变种水仙花。原创 2024-04-21 23:19:23 · 109 阅读 · 0 评论 -
创建三个指针实现反转链表
【代码】创建三个指针实现反转链表。原创 2024-04-13 16:18:06 · 83 阅读 · 0 评论 -
分割链表的解决
这块代码是在修改大链表的next的指针,防止随机值的出现,因而置为NULL;又避免了大链表尾指针原本指向小链表的lesstail导致死循环的问题。//若不加这一行,代码会出现死循环。//小链表的尾节点和大连表的第一个有效节点首尾相连。//修改大链表的尾节点的next指针指向。原创 2024-04-14 01:57:03 · 261 阅读 · 1 评论 -
leetcode:合并两个有序数组
【代码】leetcode:合并两个有序数组。原创 2024-04-08 00:59:02 · 182 阅读 · 0 评论 -
删除指定数字
【代码】删除指定数字。原创 2024-04-20 23:23:21 · 106 阅读 · 0 评论 -
给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点
【代码】给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点。原创 2024-04-13 15:57:19 · 81 阅读 · 0 评论 -
使用函数指针数组实现一个基本的计算器
这是数组指针的正确写法格式,数组指针就相当于给arr取了一个别名p,p存取了arr的地址。这里的写法可以对应数组指针,两者是十分类似的。同样,函数数组指针就很好理解了。原创 2024-04-18 20:11:13 · 346 阅读 · 0 评论 -
环形列表的约瑟夫问题
注意这里的循环结束条件,当最后只剩下一个数时,pcur->next=pcur,即指向自身。原创 2024-04-14 01:24:38 · 264 阅读 · 0 评论 -
移除元素(双指针法)
元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。不要使用额外的数组空间,你必须仅使用。的元素,并返回移除后数组的新长度。原创 2024-04-08 00:09:07 · 269 阅读 · 0 评论 -
快慢指针寻找链表的中间节点
2slow = fast,也就是slow走一步,fast走两步。原创 2024-04-13 16:39:35 · 117 阅读 · 0 评论 -
递归实现字符串长度的计算
我们可以模拟实现strlen函数。传入指针arr时,进入函数,我们要判断该指针是不是空函数,防止空指针的出现,用到了断言assert。当一个数组元素没有走到‘ \0’ 时,我们就要利用递归1+my_strlen(arr+1),arr+1是走向下一个数组元素。并且递归的使用一定要有条件的设置,否则会进入死循环。原创 2024-04-06 17:24:41 · 272 阅读 · 1 评论 -
小写字母转大写字母
通过ASCII表查询知道大写字母与小写字母相差32,可以利用这个特性,从而实现大小写字母的转换。原创 2024-04-06 17:11:25 · 146 阅读 · 0 评论