2010-05-10 79 views
0

我有一个关于链接列表的问题。我已经知道如何创建结构和链表。但现在我必须创建任意数量的链接列表,这些链接列表也保存在另一个结构中。这意味着:C中的多个链接列表

struct list{int x, struct list *next; }; 
struct parent{int x, struct list *head, struct parent *next;} 

当我进入这个输入例如创建列表后, “123134” 链表应该是这样的:

1 - > 2 - > 3 - > 4

而且例如1将包含2-> 3列表,3将包含1-> 4列表。

我需要一个起点,从你的火花。那我该怎么做呢?

+3

难道不是树吗? – tvanfosson 2010-05-10 15:54:08

+1

你想创建一个列表清单?好的...什么阻止你?您已经定义了结构。 – 2010-05-10 16:00:49

+0

问题是我无法弄清楚如何创建大量的链表。你知道,我之前只是简单地创建一个列表并对其进行处理。我现在需要很多头指针吗?你可以说得更详细点吗? – LuckySlevin 2010-05-10 16:15:41

回答

2

画出你的列表图,它经常帮助。

Start 
| 
list1 -> node1 -> node2 
| 
list2 -> node_a -> node_b -> node_c 
| 
list3 {empty} 
| 
list4 -> node_1A 

鉴于像上面的图中,lists有两个环节,一个给自己的节点,另一个到另一个列表。有些对象可能需要多个链接字段。

在你的情况,画一个图。尝试插入一个新项目。写下你采取的步骤(并绘制)。

如果你提供你的问题更多的细节,更多的人将协助。

有关包含多个列表的节点的列表的示例,请参阅BTree数据结构。每个节点都包含一个指向其他“子树”的链接数组。

+0

感谢您的评论。其实我想提一些代码来获得人们关于这个问题的想法。这就是为什么我在等待:) – LuckySlevin 2010-05-10 19:11:54