0

我正在尝试编写一个抽象数据类型来表示使用链表的整数项集,但我已经被卡住了。我不确定是否可以从另一个引用一个结构声明。这是我的尝试:

struct linkedListElement{
    int data;
    struct linkedListElement * next;
};

struct linkedListSet {

    struct linkedListElement * firstElement;        
    struct linkedListElement * header;
    struct linkedListElement * current;
    struct linkedListElement * temp;

    header = firstElement;
};

有可能这样做还是有更简单的方法?

4

1 回答 1

0

一个结构定义可以引用另一个结构定义——你可以在代码中正确地做到这一点:

struct linkedListSet {
  struct linkedListElement * firstElement;

如果您的意思是“设置”为“无重复项的无序集合”,那么重要的逻辑将在于您如何操作底层数据结构以强制执行这些约束。例如,对于您的单链表,您必须在添加项目以检查重复项之前迭代整个列表。

header = firstElement;

结构定义中不允许使用此行。

于 2013-11-06T19:41:09.570 回答