powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Требуется помощь с Линейными списками!
2 сообщений из 2, страница 1 из 1
Требуется помощь с Линейными списками!
    #38196629
fuzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть алгоритм удаления элемента по ключу в линейном двусвязном списке.Как сделать это в односвзяном?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
void lds::del()
{clrscr();
lds *r;lds *ptr;
int key;
cout<<"\n Vvedite kluch elementa dlya udaleniya";
cin>>key;
r=p;
while(r!=NULL&&r->b!=key)
r=r->next;
if(r->b==key)
{if(r->prev!=NULL&&r->next!=NULL) //Проверка что элемент не первый и не последний
{ptr=r->next;
r->prev->next = r->next;          //удаляем информацию предыдущего о текущем, заменой на инфу о следующем
r->next->prev = r->prev;          //следующего о текущем заменой на предыдущий
delete(r);                        //удаляем текущий
r=ptr;}
else
    {if(r->prev==NULL)            //проверка на первый элемент
       {p=p->next;                //меняем наш P на следующий
    delete(r);                //удаляем текущий элемент
    p->prev=NULL;             //удаляем инфу о предыдущем элементе(из следующего)
    r=p;                      //меняем текущий на следующий
       }
     else
    {r->prev->next=NULL;      //удаляем инфу предыдущего элемента о его следущем(о текущем)
     delete(r);               //удаляем текущий элемент
     r=p;
    }
    }
}
getch();
}
 
...
Рейтинг: 0 / 0
Требуется помощь с Линейными списками!
    #38196755
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fuzz,

Бежать про списку, помнить все время ссылку на предыдущую ноду (узел).
Как нашел нежный элемент — он удаляется, а предыдущий перессылается на следующий, память удаляется, для самой ноды и для данных, если они динамические и список ими владеет.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Требуется помощь с Линейными списками!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]