Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.03.2020, 17:37   #1
eliasum
Пользователь
 
Регистрация: 12.02.2015
Сообщений: 31
По умолчанию Односвязанный неизменяемый список

Здравствуйте! Для типа «односвязанный неизменяемый список», определенного как
Код:
  Class ListNode<T> {
      Public readonly T Value;
      Public readonly ListNode<T> Next;
      …
  }
мне нужно написать две функции: замены элемента в списке и объединения двух списков. Подскажите, с чего начать?
eliasum вне форума Ответить с цитированием
Старый 29.03.2020, 16:53   #2
phaggi
Пользователь
 
Регистрация: 08.03.2020
Сообщений: 24
По умолчанию

Может быть, словами русского языка описать, что мы имеем, что хотим получить в итоге и какими шагами можно прийти от первого ко второму.
Затем прикинуть, как эту русскую речь перевести на язык программирования и как проверить, что перевод правильный. И затем, переведя, проверить.
phaggi вне форума Ответить с цитированием
Старый 29.03.2020, 17:00   #3
phaggi
Пользователь
 
Регистрация: 08.03.2020
Сообщений: 24
По умолчанию

В частности, в первом случае мы имеем неизменяемый односвязный список.
А его надо изменить (заменить элемент).
Значит, надо его где-то таки менять. Значит, нужен другой список, изменяемый; нужен алгоритм изменения в изменяемом списке; нужно сначала скопировать содержание исходного списка в изменяемый; произвести изменения; вернуть новый результат в переменную неизменяемого списка.
Или другой вариант: скопировать неизменяемый список в другой изменяемый поэлементно, нужный элемент по ходу дела заменить; вернуть результат взад.
Или скопировать в изменяемый список часть неизменяемого до места замены; поместить туда замененное значение; добавить оставшийся хвост. Вернуть взад новый список.

Или ещё ченьть придумать.
Пририсовать в конце тест небольшой - что на входе, что меняем, на что и что должно получиться. Если результат нашего алгоритма совпал с тем, что должно получиться - хорошо.

P.s. Поскольку список _односвязный_ - следует не забыть о связях.

Последний раз редактировалось phaggi; 29.03.2020 в 17:55.
phaggi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определить неизменяемый столбец в таблице базы даных через JDBC QGuest Java Базы данных (JDBC, JPA, Hibernate) 0 28.11.2014 23:32
Линейный односвязанный список Chainik! Общие вопросы C/C++ 12 18.08.2014 13:57
Неизменяемый файл конфигурации. vedro-compota Общие вопросы по программированию, компьютерный форум 31 22.07.2010 19:34
неизменяемый размер формы Lepricon69 Общие вопросы Delphi 2 29.06.2010 18:50
Неизменяемый фон для canvas. vedro-compota Мультимедиа в Delphi 22 09.06.2010 18:59