Tag: 双重链表

如何在C中使用带有头文件的链表?

我必须创建一个程序,使用链表执行各种function。 我必须将函数保存在与main()不同的文件中,但是我无法弄清楚如何将列表包含在头文件中。 我尝试了不同的组合,现在我在linkedList.h文件中有这个: typedef struct list_elements* item; 这在linkedList.c中 typedef struct list_elements{ int value; struct list_elements *next; }item 问题是,当我尝试编译main.c时,我收到消息:“请求成员’值’不是结构或联合”和“请求成员’下一个’不是结构或联合”。 我看了建议的教科书和在线,但我找不到如何使用链接列表与头文件的解释? (当我在一个文件中测试整个东西时,这些function起作用,所以我不认为它们是问题所在);

具有多个父节点和子节点的链接列表

我正在尝试设计一个从文件中获取数据的程序,之后它为唯一数据编号,链表也包含父列表和子列表。 数据结构: ____A / | BC | / \ E–> FG | | | IJK 节点可以具有多个下一个节点(例如A和C),并且可以具有多于一个的先前节点。 文本文件包含这样的数据,我将从文件中获取数据并将它们转换为链接列表 : A B E I A C E F J A C G K 我的问题:是否可以使用具有多个下一个或多个先前节点的节点创建链接列表,如果是这样,结构将如何显示? 我尝试过的: 我创建了一个结构,其中包含父和子的4个整数数组。 struct abcd{ char data; int nodeid; int parent[4]; int child[4]; struct abcd *next; } 因此,父数组保存大多数前一个节点的node-id(可以是多个,因为例如E(B&C指向它) – >(node-id-1)。 子数组包含即时下一个节点(node-id +1)的node-id。 A或其他任何节点都没有重复的节点。 OUTPUT: […]