2013-11-06 5 views
0

Я пытаюсь написать абстрактный тип данных для представления наборов целочисленных элементов , используя связанные списки, но я уже застрял. Я не уверен, можно ли ссылаться на одно объявление структуры от другого. Вот моя попытка:Использование связанных списков и структур

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

struct linkedListSet { 

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

    header = firstElement; 
}; 

Возможно ли это сделать так или есть более простой способ?

ответ

0

Это возможно для одного определения структуры обратиться к другому STRUCT Defintion - вы делаете это правильно в вашем коде:

struct linkedListSet { 
    struct linkedListElement * firstElement; 

Если вы имеете в виду «набор», как в «неупорядоченной коллекции элементов без дублей» , тогда важная логика будет заключаться в том, как вы манипулируете своей базовой структурой данных для обеспечения соблюдения этих ограничений. Например, с вашим одноуровневым списком, вы должны перебрать весь список перед добавлением элемента для проверки дубликатов.

header = firstElement; 

Эта строка не допускается в определении структуры.

Смежные вопросы