C 插入函数
我有一个必须解决的家庭作业问题:编写一个插入函数,将元素插入列表中存储特定数据项的元素之后的第一个位置。我还必须使用这个函数。我不明白问题在问什么。有人能用更容易理解的术语向我解释这个问题吗C 插入函数,c,insert,C,Insert,我有一个必须解决的家庭作业问题:编写一个插入函数,将元素插入列表中存储特定数据项的元素之后的第一个位置。我还必须使用这个函数。我不明白问题在问什么。有人能用更容易理解的术语向我解释这个问题吗 #include "list.h" LINK lookup(DATA c, LINK head) { if (head == NULL) return NULL; else if ( c == head -> d) return head; else
#include "list.h"
LINK lookup(DATA c, LINK head)
{
if (head == NULL)
return NULL;
else if ( c == head -> d)
return head;
else
return (lookup(c, head -> next));
}
问题是要求您编写一个函数,在列表中查找指定项,然后在此位置后将新项插入列表中 因此,鉴于清单
List = {Item1, Item2, Item3, Item4}
您的函数列表。插入(Item2,Item5)
(例如)应导致
List = {Item1, Item2, Item5, Item3, Item4}
你有一个链表。列表由
链接
结构组成(更准确地说,链接
类型似乎是指向实际节点结构的指针。我们面前没有定义,但每个链接
结构可能都包含一个数据
结构以及通常的链接指针
您的任务是在列表的
链接
和数据
结构的开头搜索列表,直到找到第一个链接
,该链接的数据与给定的数据相同。然后,在要求查找数据c的链接之前将新元素插入列表中
在链表中(函数查找()
将为您完成此操作),然后在c
和c
之后的DATA
项之间插入DATA
项。如果c
是列表中最后一个DATA
项,则您需要添加新的DATA
项作为最终的DATA
项。如果列表为空,即如果lookup()
返回NULL
,则新的数据
项应存储为列表中唯一的数据
项
为什么不发布list.h
的相关部分,以便我们了解链表的外观
发布整个lookup()
函数也是一个好主意。lookup()
函数中唯一缺少的是结束“}
”。