自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 leecode-移除链表元素

第一种 cur的后两个节点都存在并且后一个元素要移除(相当于示例1中的第1个6),只要cur->next = cur->next->next;第二种,cur是倒数第二个元素并且最后一个元素要移除(相当于示例1中的第二个6),只要让cur的next指针指向空就可以了。这里我使用到哑指针用于保存head的地址,这里cur表示当前遍历到的结点,分三种情况。第三种,cur后一个元素不需要移除,就把cur后移一位。,请你删除链表中所有满足。给你一个链表的头节点。

2024-10-28 19:41:46 256

原创 leecode-82. 删除排序链表中的重复元素 II

已解答中等相关标签相关企业给定一个已排序的链表的头head删除原始链表中所有重复数字的节点,只留下不同的数字。返回已排序的链表。[1,2,5][2,3]这里说设置个哑指针dummy指向head,为什么这么做?

2024-10-28 17:28:18 239

原创 leecode-删除排序链表中的重复元素

当这个链表为空或只有一个头结点时不需要排序直接return头结点指针。将前一个结点的next指向它后一个结点的后一个结点。返回上一级已经删除重复数据的链表的头结点指针。删除所有重复的元素,使每个元素只出现一次。这里我用的是递归,我最近在练习递归。给定一个已排序的链表的头。

2024-10-28 14:57:08 279

原创 leecode-两两交换链表中的结点

给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。

2024-10-28 14:28:39 191

原创 leecode-反转链表

使用递归函数,一直递归到链表的最后一个结点,该结点就是反转后的头结点,记作 ret .此后,每次函数在返回的过程中,让当前结点的下一个结点的 next 指针指向当前节点。同时让当前结点的 next 指针指向 NULL ,从而实现从链表尾部开始的局部反转。pre 在前 cur 在后。每次让 pre 的 next 指向 cur ,实现一次局部反转。局部反转完成之后,pre 和 cur 同时往前移动一个位置。循环上述过程,直至 pre 到达链表尾部。当递归函数全部出栈后,链表反转完成。

2024-10-25 15:23:27 195

原创 双向循环链表编程例题

输入n个数值到一个链表,该链表使用next指针遍历,数值是有序递增的,如有相同的数值,则直插入一次。2.设计一个链表,长度为10-20之间,有随机数生成,里面保存的数值也是随机数(0-100之间)。求链表中间两个结点的数据域的数值(如果链表长度为偶数,则打印中间两个数值的平均值)输入:5,3,1,2,4,5。输出:1,2,3,4,5。1.使用双向循环链表。

2024-10-24 19:45:00 102

原创 双向链表和双向循环链表

1.创建一个新结点2.遍历链表找到最后一个结点p3.p结点的后继指针指向新结点,新结点的前驱指针指向p,新结点的后继指针指向NULL;void Insert_tail(DLIST head, DLIST node)\\尾部插入= NULL)void Show(DLIST head)\\打印链表while (p!= NULL)int main()\\运行Show(head);return 0;

2024-10-23 23:28:00 872

原创 struct结构体练习题

struct练习题

2024-10-18 14:29:16 259

原创 Struct编程题

如果你是因为刚学完结构体或者是大学作业而搜到我这篇回答,学姐的回答只能给你一个参考,真正还是要自己动手实践。刚开始可能会比较困难,没关系,不懂就多问问AI这一步是为什么这样写,那一步是什么意思,慢慢就会了,做完一道,再来一题你会更加熟练。有一点要注意一下,log这个变量是用来验证登录的,没登陆或者登陆不成功log==-1这个时候还是在用户登录界面里面;这一题的话,排序函数可能要注意一下,这里我用的是冒泡排序,其他也没什么好讲的,比较简单。

2024-10-16 19:13:59 141

原创 Struct结构体

数组是用来存储一组相同数据类型的集合,如果要存储不同数据类型,那么数组就满足不了需求,这个时候用到结构体。struct 结构体名{结构体所要包含的数据类型我的理解是:结构体是一种集合,里面定义了多个变量或者数组。他们的数据类型可以相同,可以不同,每一个这样的变量或者数组,称为结构体的成员。一般的数据类型只能定义一个变量,数组类型可以定义多个相同类型变量,而结构体可以定义多个不同类型变量。//学生姓名int age;//学生年龄float tall;//学生身高//学生成绩。

2024-10-16 19:00:34 899

原创 库文件和Makefile

1.生成动态库gcc -shared -fPIC -o 动态库文件名 源文件1 源文件2 源文件3...2.编译出可执行程序gcc 主函数.c -o 可执行文件名 -l库文件名 -I 头文件路径 -L 库文件路径3.将动态库文件复制到/libsudo cp 动态库文件名 /lib1.2.7删除动态库如果需要删除动态库文件,就需要删除/lib目录下的动态库.so文件,但是lib目录只能由管理员操作,所以要删除,需要先获得管理员权限。sudo su。

2024-10-16 14:46:32 1017

原创 贪心:已知一辆汽车加满油后可行驶d(如d=7)km,而旅途中有若干个加油站。编写一个实验程序指出应在哪些加油站停靠加油,使加油次数最少。

用a数组存放加油站之间的距离,例如a[]={2,7,3,6},表示共有n=4个加油站(加油站编号是0~n-1),从起点到0号加油站的距离为2km,依次类推。输出:汽车不可能达到终点站!//0号和1号加油站间距大于汽车加满油可行驶里程。a[]={2,7,3,6} //加油站之间的距离。a[]={2,7,3,6} //加油站之间的距离。d=6 //汽车加满油后可行驶的里程。d=7 //汽车加满油后可行驶的里程。输入:n=4 //加油站数量。输入:n=4 //加油站数量。

2023-12-04 17:31:20 282

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除