45 / 30 / 11
Регистрация: 31.10.2009
Сообщений: 200
|
||||||
1 | ||||||
Вставка в линейный список01.05.2010, 15:32. Показов 904. Ответов 1
Метки нет (Все метки)
Привет всем, не пойму почему функция insert не правильно работает(, а в частности, установление нового узла с предыдущим. После вставки нового узла у меня указатель на предыдущий элемент содержит указатель на новый элемент. Я ДАЖЕ КОММЕНТИРОВАЛ ЭТУ СТРОКУ КОДА (строка <10>), все равно предыдущий равен самому себе((заранее благодарен. Вот код:
Before insert prev = 00000000 12 - ( 00365C08 ) next = 00365C50 prev = 00365C08 2 - ( 00365C50 ) next = 00365C98 prev = 00365C50 3 - ( 00365C98 ) next = 00365CE0 prev = 00365C98 4 - ( 00365CE0 ) next = 00000000 After insert prev = 00000000 12 - ( 00365C08 ) next = 00365C50 prev = 00365C08 2 - ( 00365C50 ) next = 00365DC0 prev = 00365DC0 88 - ( 00365DC0 ) next = 00365C98 prev = 00365C50 3 - ( 00365C98 ) next = 00365CE0 prev = 00365C98 4 - ( 00365CE0 ) next = 00000000 Добавлено через 36 минут Все нашел где ошибка)) строка 88: if(*pend != f_key)(f_key->next)->prev = pv; нужно заменить f_key на pv? так как я уже присвоил f_key->next = pv, поэтому и получилось pv->prev == pv.
0
|
01.05.2010, 15:32 | |
Ответы с готовыми решениями:
1
Вставка элемента в линейный односвязный список после заданного Вставка нового элемента в линейный односвязный список перед элементом с максимальным значением ключа Вставить в линейный список перед элементом с заданным значением другой линейный список Задали односвязный линейный список с целыми числами. Создать новый список, который содержит элементы заданного списка в обратном порядке |
2343 / 499 / 22
Регистрация: 01.04.2009
Сообщений: 2,200
|
||||||
01.05.2010, 16:22 | 2 | |||||
так ты сам-то посмотри что делаешь...
на " if(*pend != f_key)(pv->next)->prev = pv;"
0
|
01.05.2010, 16:22 | |
01.05.2010, 16:22 | |
Помогаю со студенческими работами здесь
2
Линейный список Линейный список Линейный список Вывести линейный список Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |