В список элемент можно добавить в начало, конец и середину. Рассмотрим добавление нового элемента в начало однонаправленного линейного списка и однонаправленного циклического списка.
Напомню, что используется структура, объявленная в первой статье цикла.
Итак, добавление нового элемента в начало однонаправленного линейного списка:
void addFirst (Elem* &first, int inf1) {
if (!first) {
first=new Elem;
first->next=NULL;
first->inf1=inf1;
return;
}
Elem* n=new Elem;
n->next=first;
first=n;
first->inf1=inf1;
return;
Добавление нового элемента в начало однонаправленного циклического списка:
void addFirst (Elem* &first, int inf) {
if (!first) {
first=new Elem;
first->next=NULL;
first->inf1=inf1;
return;
}
Elem* last=first;
while (last->next!=first) last=last->next;
Elem* n=new Elem;
n->next=first;
first=n;
last->next=first;
first->inf1=inf1;
return;
}
Comments ( 0 )