0 / 0 / 0
Регистрация: 04.06.2016
Сообщений: 24
|
||||||||||||||||
1 | ||||||||||||||||
Объединение двух связанных списков (нужен совет)14.08.2016, 13:55. Показов 1739. Ответов 4
Метки нет Все метки)
(
шаблон ListNode
пример обращения к присоединенного объекта второго "списка" через указатель первого списка (выделено на скриншоте с функцией), свидетельствует, шо присоединение было успешным(вивод показан на скриншоте), но после написания функции "merge" выдает исключение в фукнции "print" (показано на скриншоте), но суть в функции "merge" потому что к ее написанию все работало, думаю где-то есть проблема с адресами, но не могу понять до конца месте. буду рад любым советам ![]() (преждевременно извиняюсь, что код без комментариев)
0
|
|
14.08.2016, 13:55 | |
Ответы с готовыми решениями:
4
Объединение двух списков
Объединение (конкатенация) двух односвязных списков Объединение двух списков в один без повтора элементов (С++) |
7651 / 6456 / 2944
Регистрация: 14.04.2014
Сообщений: 28,147
|
||||||
14.08.2016, 14:47 | 2 | |||||
![]() Решение
Твоя merge() новых узлов не создает, а возвращает копию.Там деструктор будет вызываться.
В общем сделай так, чтобы присоединялось к списку, для которого функция вызвана.
1
|
0 / 0 / 0
Регистрация: 04.06.2016
Сообщений: 24
|
|
14.08.2016, 15:22 [ТС] | 3 |
спасибо, это так, перемудрил немного с функцией, а на счет "не создает новых узлов" все же надо чтоб создавались новые узлы в первом списке можно чтоб конец первого списка отметил начало второго, а конец первого стал на место конца второго.
Добавлено через 15 минут nmcf, к теме с узлами, эти же узлы уже существуют во втором списке, нельзя указать на них, чтобы не создавать лишние копии, а просто взять то, что есть?
0
|
7651 / 6456 / 2944
Регистрация: 14.04.2014
Сообщений: 28,147
|
|
14.08.2016, 18:26 | 4 |
![]() Решение
Надо либо делать копии узлов, либо передавать от одного объекта другому. А если несколько объектов будет владеть одним и тем же, то будет путаница.
1
|
0 / 0 / 0
Регистрация: 04.06.2016
Сообщений: 24
|
|||||||||||
14.08.2016, 19:56 [ТС] | 5 | ||||||||||
если честно, я с самого начала так и хотел реализовать, через копии узлов, функцию getNewListNode(...), поочередно вставляя в зад новые узлы, но потом стало интересно можно реализовать через манипуляции с указателями (все же так и кода меньше и быстрее , но все же первый вариант предпочтительнее и надежнее + более понятен.
спасибо тебе за помощь и советы ![]() Добавлено через 42 минуты
0
|
14.08.2016, 19:56 | |
14.08.2016, 19:56 | |
Помогаю со студенческими работами здесь
5
Нужен совет по решению - из двух натуральных чисел составить одно наименьшее. Релизация связанных списков Создать модель файловой системы на основе связанных списков Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |