|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
|||||||||||
Двусвязные списки без ООП01.10.2019, 15:01. Показов 3764. Ответов 53
Метки нет (Все метки)
Здравствуйте, я перелазил по всем сайтам и совсем уже запутался, ни как не разберу как создать мне двусвязный список И как его мне его потом вызвать в мейне.
Точно понятно что список нужно вывести. А остальное я не понимаю, все что-то пишут на сайтах не дает вообще никакого понятия как работают списки чем больше читаю тем больше вхожу в заблуждение. Чтобы реализовать двусвязный список нужно написать функции: добавление элемента в конец, в начало списка, так же нужно написать удаление всего списка, а это значит что нужно кроме как завести память под элемент(узел) списка прежде чем его куда-то добавлять нужно было еще в начале завести память под весь список, верно? хоть какие то мои предположения верны?Еще создание нового элемента и добавление его в список это одно и тоже? Помогите, пожалуйста с этим делом ![]() P.S. Хватит с меня ссылок. Нужен человек который напишет код и все объяснит по нему ИЛИ(и) человек готовый разжевать все до мелочей. Крч суть в том, что те добрые люди который откликнуться должны быть готовы ответь на мои тупые вопросы которые будут возникать по ходу понимания как работает эта структура данных
0
|
|||||||||||
| 01.10.2019, 15:01 | |
|
Ответы с готовыми решениями:
53
двусвязные списки Двусвязные списки в с++ |
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||||||
| 02.10.2019, 14:33 [ТС] | ||||||
|
Я сделал такую штуку в int main(int argc, char** argv)
0
|
||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 02.10.2019, 14:35 | |
|
0
|
|
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||||||
| 02.10.2019, 14:36 [ТС] | ||||||
0
|
||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||||||
| 02.10.2019, 14:38 | |||||||
1
|
|||||||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||||||
| 02.10.2019, 14:44 [ТС] | ||||||
|
Кликните здесь для просмотра всего текста
0
|
||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||||||||||
| 02.10.2019, 15:34 | |||||||||||
0
|
|||||||||||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
|||||||
| 02.10.2019, 15:38 [ТС] | |||||||
|
const, я кстати тоже дописал, я еще в мейне после принта вызвал pop_back(list), а потом clearlist(list)...ну у них одинаковая ошибка: [Error] invalid initialization of reference of type 'List&' from expression of type 'List*'
поп_бэк без изменений,а клирлист сейчас такой:
0
|
|||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||||||||
| 02.10.2019, 15:41 | ||||||||
0
|
||||||||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||
| 02.10.2019, 15:52 [ТС] | ||
|
И раз clearlist(List &list) очищает весь список при помощи pop_back, стоит ли вообще в мейне вызывать pop_back?
Добавлено через 6 минут Добавлено через 3 минуты У меня в текстовом файле три строки: 123 weqrqre 44ff4 Почему мой вывод такой: "1 44ff4 2 44ff4 3 44ff4" ? Где я прокололся?
0
|
||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 02.10.2019, 15:53 | |
|
0
|
|
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
|||
| 02.10.2019, 16:04 [ТС] | |||
|
0
|
|||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 02.10.2019, 16:08 | |
|
1
|
|
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||
| 02.10.2019, 16:15 [ТС] | ||
|
Я после %s написал \n и получилось такое Кликните здесь для просмотра всего текста
3 44ff4
2 weqrqre 1 123
0
|
||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||||||||||||||||
| 03.10.2019, 16:46 [ТС] | ||||||||||||||||
|
oleg-m1973, Снова здраствуйте, можете еще чуток помочь по списку, пожалуйста
Кликните здесь для просмотра всего текста
Кликните здесь для просмотра всего текста
Вот такие вывод и мейн: Кликните здесь для просмотра всего текста
123 weqrqre 44ff4 А вывод в консоле такой: 4. 44ff4 3. 44ff4 2. weqrqre 1. 123 Во первых должно на единицу начинаться, а не заканчиваться, во-вторых откуда берется еще одна строка?!
0
|
||||||||||||||||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||
| 03.10.2019, 16:52 | |||
|
Добавлено через 2 минуты Наверное, надо проверять, что возвращает fgets или что-то типа того
0
|
|||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
||
| 03.10.2019, 17:00 [ТС] | ||
![]() Нужно то в хвост, еще раз спасиб) Вы случайно не знаете чем может быть вызвано, то что последняя строка выводится дважды это касается списка или того как я читаю файл своим fgets ?
0
|
||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||||||
| 03.10.2019, 17:03 | |||||||
1
|
|||||||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
|||
| 03.10.2019, 18:18 [ТС] | |||
|
Добавлено через 2 минуты Добавлено через 1 час 10 минут oleg-m1973, Извиняюсь за вопрос не по теме, просто подскажите в правильном ли направлении я мыслю. Если я захочу поменять местами две разные data, то есть просто их свапнуть то мне нужно пройтись по всем узлам в поисках data1 и присвоить ей временную переменную, а потом тоже самое повторить с data2 и после этого сделать что-то типом temp=data1; data1=data2; data2=temp; ?
0
|
|||
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 03.10.2019, 20:08 | ||
|
Могу только сказать, что в двусвязном списке обычно дешевле поменять местами ноды, чем обменивать их значения
0
|
||
|
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
|
|||
| 03.10.2019, 20:25 [ТС] | |||
![]() Я пытаюсь реализовать функцию, которая меняет местами два указанных нода в линейном двусвязном списке.
0
|
|||
| 03.10.2019, 20:25 | |
|
Двусвязные списки Шаблонные двусвязные списки. Линейные двусвязные списки Указатели и двусвязные списки
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет:
1. Использовать системное время и дату,
2. Есть возможность вводить время и дату вручную.
3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
|
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber.
Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
|
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео:
https:/ / vkvideo. ru/ video-240781534_456239017
YouTube:
eY5-5PyI9NM
Текстовая версия
|
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать
Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
|
|
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства.
Родственных связей существует 8 ступеней, такие как:
p - отец
P - мать
q - муж
Q - жена
b - брат
B - сестра
s - сын
S - дочь
|
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире.
Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
|
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С.
Задача:
Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
|
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
|