Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: связанные списки (с++)  (Прочитано 8910 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ulmashon
Гость
« : 01-10-2008 18:41 » 

надо написть процедуру ,которая получает ввиде параметра два  связанных ,упорядоченных  списка  (Двусвязанные) L1 и L2 (большая величина-в начале списка) и простроить новый  упорядоченный список  L3 (большая величина-в начале списка)   состоящий из всех членов L1 и L2
Записан
Алексей++
кот глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 02-10-2008 04:35 » 

0) L3 пуст.
1) берём из L1 элемент, кладём в L3 так, чтобы порядок сортировки L3 остался нужный нам.
2) повторять "1" , пока не всё
3) берём из L2 элемент, кладём в L3 так, чтобы порядок сортировки L3 остался нужный нам.
4) повторять "3" , пока не всё
Записан

Вад
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 02-10-2008 05:54 » 

Можно оптимизировать процесс слияния списков. Достаточно идти до условия "пока не закончились оба списка" и сравнивать два текущих элемента списков. чей больше, тот идёт в L3, а позиция в исходном списке смещается дальше - и повторяется всё то же самое. Собственно, полагаю, все сортировки слиянием так делают (там-то речь не о списках, а о массивах идёт, вставлять в середину массива ещё затратнее).
Записан
Serg79
Команда клуба

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 02-10-2008 11:50 » 

ulmashon, уже все давно написанно, пользуйся на здоровье. И заметь это все под лицензией 'BSD'.  Да-да

* queue.h (16.96 Кб - загружено 390 раз.)
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines