Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Alexen
5 / 5 / 0
Регистрация: 14.11.2008
Сообщений: 77
#1

Связаные списки - C++

10.06.2009, 12:03. Просмотров 519. Ответов 1
Метки нет (Все метки)

Ребят подскажите как можно удалить из двухсвязного списка последние крайние узлы
при удалении по нахождению реквизита узла.

void del(List *list)
{
cout << "Введите фамилию для удаления записи." << endl
<<"?: ";
char mas[15];
cin >> mas;
Date *temp = list->Head, *delete_c;
if (list->Head == NULL)
{cout << "Список пуст."; return;}

if(list->Head == list->Tail)
{
if(!strcmp(temp->name, mas))
{list->Head = list->Tail = 0; delete temp; return;}
}

while(temp)
{
delete_c = temp;
if(!strcmp(temp->name, mas))
{ delete_c->last->next = temp->next;
delete_c->next->last = temp->last;delete temp; return;
}

temp = temp->next;
}

}
что имею. Или необходимо добвлять условия для крайних дополнительно??
Зарание спс. Учу списки застрял на этом.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2009, 12:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Связаные списки (C++):

Литература о Связаные списках - C++
Здравствуйте, кто знает какую нить литературу по которой можно понять связаные списки. И зачем нужны связаные списки.

Списки, как склеить списки между собой? - C++
Ребят, привет всем, есть код, в классе которого описаны несколько методов: добавление элемента в список, удаление и просмотр списка, дак...

Списки в С++ - C++
#include&lt;iostream.h&gt; #include &quot;time_1.h&quot; #include&lt;time.h&gt; #include&lt;windows.h&gt; char* Rus (const char* text); class List { ...

С++ списки - C++
драствуйте помиоогите решить програму :списки Построить список согласно заданной входной последовательности чисел, показывая динамику его...

Списки С++ - C++
Пусть в файле хранятся записи со сведениями об автомобилях и их владельцах (марка, номер ГАИ, фамилия владельца); Необходимо: а) для...

Списки - C++
помогите пожалуйста решить задачу! сформировать список из натуральных чисел. Найти среднее арифмитическое элементов списка и выяснить,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Deiron
26 / 26 / 1
Регистрация: 25.05.2009
Сообщений: 98
10.06.2009, 15:31 #2
хмм. Лучше перестраховаться. При условии, что у первого элемента списка last==NULL а у последнего next==NULL, то лучше сделайте так
C++
1
2
3
4
5
if(!strcmp(temp->name, mas)){ 
    if (delete_c->last) delete_c->last->next = temp->next;
    if (delete_c->next) delete_c->next->last = temp->last;  
    delete temp; return;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.06.2009, 15:31
Привет! Вот еще темы с ответами:

Списки - C++
вопрос, в каких случаях используют односвязный список заместо двух связного?

Списки - C++
Помогите пожалуйста с задачей: В списке L найти такой элемент &quot;y&quot; (если существует), что &quot;y&quot; больше всех предыдущих и меньше всех...

C++ списки - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;list&gt; using namespace std; int main(void) { list&lt; int &gt; l,...

Списки - C++
Даны 2 списка( из файлов) в третий список поместить те элементы из списка 1, для которых в списке 2 найдутся меньшие элементы! Прошу помочь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru