C语言
荣耀至上.@
这个作者很懒,什么都没留下…
展开
-
双向链表的实现
创建的是一个带头的双向链表,结构如下。原创 2022-12-14 20:58:25 · 129 阅读 · 0 评论 -
链表的快慢指针思想的解决
看接下来的一道题目 1、给定一个头结点为 head 的非空单链表,返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 例子:[1,2,3,4,5] 返回中间节点3 [1,2,3,4,5,6] 返回中间节点4 我们该如何做呢,首先这里用到了快慢指针,就是让两个指针同时指向头节点,一个指针一个一个的走,一个指针是两个两个的走,看下面的代码 下面这个例题时快慢指针的变形,类似于快慢指针2、输入一个链表,输出该链表中倒数第k个结点。 输入: 1,{1,2,3,4,5} 返回值原创 2022-12-07 18:57:03 · 156 阅读 · 0 评论 -
寻找单身狗和进阶版的单身狗
1.找单身狗 ,一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。编写一个函数找出这两个只出现一次的数字。2、一个数组中只有两个数字是出现一次,其他所有数字都出现了两次。编写一个函数找出这两个只出现一次的数字。原创 2022-10-16 17:33:53 · 111 阅读 · 0 评论 -
动态内存管理
realloc - 调整内存空间的大小的/如果第一个参数是NULL,功能类似malloc。动态内存的开辟是在堆区进行内存空间的开辟,开辟到的是一块连续的空间。free - 释放动态开辟的内存空间的。malloc - 不初始化。calloc - 初始化为0。realloc的使用。原创 2022-09-24 22:02:21 · 180 阅读 · 0 评论 -
库函数memcpy的使用
根据这个运行结果发现,好像根本没拷贝过去,变成了不是我期望的值,这是为什么呢,仔细观察发现,向这种情况不能在从前向后拷贝了,应该是从后往前拷贝,但srcdest时可以从前往后拷贝,代码如下所示。这里就简单实现了,那么考虑一下,把1,2,3,4,5拷贝到3,4,5,6,7上面呢,如果还用刚刚实现的模拟函数会出现什么问题呢。把源头的指针的值拷贝到目标指针的值中,拷贝是按字节拷贝的,使用方法如下。库函数memcpy是内存函数的拷贝,memcpy的函数参数如下。原创 2022-09-14 22:14:03 · 845 阅读 · 0 评论 -
库函数strstr的实现
strstr是字符串的查找,就是找一个字符串中是否含有另一个字符串的函数,如果存在子字符串,返回的是第一个字符串的起始位置,看一下模拟实现。原创 2022-09-12 17:09:58 · 78 阅读 · 0 评论 -
库函数strcmp的模拟实现
前面字符串大于后面的字符串返回大于0的数字,相等返回0,前面的字符串小于后面的,返回小于0的数字。strcmp是字符串之间的比较,看官方说明。strcmp的模拟实现。原创 2022-09-12 16:14:49 · 207 阅读 · 0 评论