C语言链表
互联网知名搞黄选手
计算机学生慕名而来
展开
-
【C语言】——将两个有序的链表合并为一个新链表,要求新的链表是通过拼接两个链表的节点来生成的
** 思路:定义一个头指针用来创建一个新链表,并且判断l1,l2是否为NULL要写在前面 ** /* 时间:2020/08/10 */ ` /** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */ struct ListNode* mergeTwoLists(struct ListNode* l1, struct L原创 2020-08-10 16:54:15 · 748 阅读 · 0 评论 -
【C语言】——删除链表倒数第n个结点
题目来源:力扣 **总结:利用count计算有多少个结点在利用i使指针移动到要被删除的前一个结点 ** typedef struct list{ int val; struct list *pnext; }NODE,*PNODE; PNODE sort(PNODE pHead,int n){ int count=0,i=0; PNODE p=pHead->pnext,s=pHead; while(p!=NULL){ p=p->pnext;原创 2020-08-10 14:02:21 · 256 阅读 · 0 评论 -
【C语言】——给出一个链表和一个值 ,以 为参照将链表划分成两部分,使所有小于 的节点都位于大于或等于 的节点之前。 两个部分之内的节点之间要保持的原始相对顺序
**思路:****通过定义两个头指针使其分别指向小于a和大于等于a的结点 从而将两部分分别进行连接形成两个链表 再将小于a的那一部分的链表的尾指针指向大于等于a的链表的首结点形成一个新链表 ****** /* 时间:2020/08/08 目的:给出一个链表和一个值a ,以a为参照将链表划分成两部分 使所有小于 a的节点都位于大于或等于a的节点之前 两个部分之内的节点之间要保持的原始相对顺序 功能:利用链表解决一些实际问题 */ #include<stdio.h> #原创 2020-08-09 13:45:33 · 446 阅读 · 0 评论 -
【C语言】——删除链表中的所有重复出现的元素,只保留原链表中只出现一次的元素
/* 时间:2020/08/08 目的:删除链表中的所有重复出现的元素,只保留原链表中只出现一次的元素。 功能:利用链表解决一些实际问题 */ #include<stdio.h> #include<stdlib.h> #include<malloc.h> typedef struct list{ int val; struct list *pnext; }NODE,*PNODE; int main() { PNODE pHead; int len;原创 2020-08-08 17:33:53 · 695 阅读 · 0 评论 -
【C语言】——删除链表中相同的元素,使得各个元素只出现一次
/* 时间:2020/08/08 目的:删除链表中相同的元素,使得各个元素只出现一次 功能:利用链表解决一些实际问题 */ #include<stdio.h> #include<stdlib.h> #include<malloc.h> typedef struct list{ int val; struct list *pnext; }NODE,*PNODE; PNODE creatlist(int); PNODE sort(PNODE); void t原创 2020-08-08 16:31:33 · 283 阅读 · 0 评论 -
【C语言】——n人围成一圈从第1个人开始按1~3报数,报3的人退出圈子,求最后留下的是几号(用链表的方法解决)
思路和用非指针的方法解决是一样的,非指针解决本题可以参考这个程序 /* 时间:2020/08/05 目的:n人围成一圈从第1个人开始按1~3报数,报3的人退出圈子,求最后留下的是几号 功能:用链表解决一些实际问题,加深对链表的理解和运用 */ #include<stdio.h> #include<stdlib.h> #include<malloc.h> typedef struct BX { int num; struct BX *pNext; }NODE原创 2020-08-05 16:17:00 · 622 阅读 · 0 评论 -
【C语言】链表——在特定的结点前插入,删除特定的结点和查找特定结点的值
**对于链表的插入,删除和查找的另外一种情况进行了解 ** #include<stdio.h> #include<malloc.h> #include<stdlib.h> typedef struct listnode { int date; struct listnode *pnext; } NODE,*PNODE; PNODE creatlist();//返回的是NODE型指针,所以要用PNODE定义 void trase(PNODE);//输出函数原创 2020-08-01 18:10:57 · 525 阅读 · 0 评论 -
【C语言】——基本了解单链表创建,输出,查找,插入,删除
了解查找含有特定值的结点,把值插入到的其中特定位置,删除含有特定值的结点的操作 /* 时间:2020/07/02 12:39 目的:创建和输出单链表 功能:基本了解单链表创建,输出,查找,插入,删除 */ #include<stdio.h> #include<math.h> #include<malloc.h> #include<stdlib.h> typedef struct listnode { int date; struct listn原创 2020-08-01 17:44:19 · 305 阅读 · 0 评论 -
【C语言】链表——a,b两无序链表合并后有序输出
在dev c++上输出正确,但是总结和输出结果部分复制过来文章就编辑不了了 /* 时间: 2020/07/05 21:38 目的:a,b两无序链表合并后有序输出 功能:使用链表解决一些实际问题,巩固对链表理解和应用 */ #include<stdio.h> #include<math.h> #include<malloc.h> #include<stdlib.h> typedef struct listnode { int num; flo原创 2020-08-01 17:28:43 · 407 阅读 · 0 评论