0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
1

Слияние двух упорядоченных списков

04.01.2015, 12:27. Показов 2303. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
Можете подсказать как делать?
Условие: Провести слияние двух упорядоченных списков. В качестве элементов первого списка взять буквы фамилии (Щербаков), в качестве элементов второго списка взять буквы имени (Иван).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.01.2015, 12:27
Ответы с готовыми решениями:

Слияние двух односвязных упорядоченных по неубыванию линейных списков
Разработайте программу слияния двух односвязных упорядоченных по неубыванию линейных списков в один...

Слияние двух упорядоченных массивов.
Вот условие задачи: Из двух упорядоченных по невозрастанию массивов A(M) и B(N) получить путем...

Слияние однонаправленных динамических списков
Задачка ТурбоПаскаль: Слить 2 списка (оба- возрастающая последовательность целых чисел) в третий...

Слияние двух файлов. type FI:=file of integer;
Условие задачи: Дано type FI:=file of integer; Пусть в каждом из файлов x и y элементы...

4
Эксперт Pascal/Delphi
6811 / 4568 / 4819
Регистрация: 05.06.2014
Сообщений: 22,438
04.01.2015, 17:04 2
Объединение динамических списков
0
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
04.01.2015, 18:57  [ТС] 3
нет, не так!
вот аналогичный пример:
Составим первый список из упорядоченных букв фамилии: веенорст
Пусть head1 указывает на первый элемент “в” этого списка.
Пусть p1 – указатель на текущий элемент этого списка.
Составим второй список из упорядоченных букв имени: аадеклнрс
Пусть head2 указывает на первый элемент “а” этого списка.
Пусть p2 – указатель на текущий элемент этого списка.
Пусть head3 указывает на первый элемент нового списка. Сначала head3 = nil
Пусть p3 – указатель на текущий элемент нового списка.
Пусть каждый элемент списков представляет из себя структуру с полями:
data – информационная часть,
next – указатель на следующий элемент списка.
Установим текущие указатели на начала списков:
P1 := head1;
P2 := head2;
Проверяем P1^.data <= P2^.data? нет.
И Head3 = nil, а значит head3 := p2; p3 := p2; P2 := p2^.next
Получаем третий список: а
Проверяем P1^.data <= P2^.data? нет.
Значит p3^.next := p2; p3 := p2; P2 := p2^.next
Получаем третий список: аа
Проверяем P1^.data <= P2^.data? да.
Значит p3^.next := p1; p3 := p1; P1 := p1^.next
Получаем третий список: аав
Проверяем P1^.data <= P2^.data? нет.
Значит p3^.next := p2; p3 := p2; P2 := p2^.next
Получаем третий список: аавд
Проверяем P1^.data <= P2^.data? да.
Значит p3^.next := p1; p3 := p1; P1 := p1^.next
Получаем третий список: аавде
Проверяем P1^.data <= P2^.data? да.
Значит p3^.next := p1; p3 := p1; P1 := p1^.next
Получаем третий список: аавдее
Проверяем P1^.data <= P2^.data? нет.
Значит p3^.next := p2; p3 := p2; P2 := p2^.next
Получаем третий список: аавдеее
Проверяем P1^.data <= P2^.data? нет.
Значит p3^.next := p2; p3 := p2; P2 := p2^.next
Получаем третий список: аавдееек
Проверяем P1^.data <= P2^.data? нет.
Значит p3^.next := p2; p3 := p2; P2 := p2^.next
Получаем третий список: аавдееекл
Проверяем P1^.data <= P2^.data? да.
Значит p3^.next := p1; p3 := p1; P1 := p1^.next
Получаем третий список: аавдеееклн
Проверяем P1^.data <= P2^.data? нет.
Значит p3^.next := p2; p3 := p2; P2 := p2^.next
Получаем третий список: аавдеееклнн
Проверяем P1^.data <= P2^.data? да.
Значит p3^.next := p1; p3 := p1; P1 := p1^.next
Получаем третий список: аавдеееклнно
Проверяем P1^.data <= P2^.data? да.
Значит p3^.next := p1; p3 := p1; P1 := p1^.next
Получаем третий список: аавдеееклннор
Проверяем P1^.data <= P2^.data? нет.
Значит p3^.next := p2; p3 := p2; P2 := p2^.next
Получаем третий список: аавдеееклннорр
Проверяем P1^.data <= P2^.data? да.
Значит p3^.next := p1; p3 := p1; P1 := p1^.next
Получаем третий список: аавдеееклнноррс
Проверяем P1^.data <= P2^.data? нет.
Значит p3^.next := p2; p3 := p2; P2 := p2^.next
Получаем третий список: аавдеееклнноррсс
P2 = nil, а значит второй список закончился. Добавим остаток первого списка к новому списку.
Значит p3^.next := p1
Получаем третий список: аавдеееклнноррсст
0
Эксперт Pascal/Delphi
6811 / 4568 / 4819
Регистрация: 05.06.2014
Сообщений: 22,438
05.01.2015, 11:52 4
INShcherbakov, судя по ручной трассировке, которую вы выполнили, вам вряд ли нужна чья-то помощь. В списках вы уж точно разбираетесь.
0
0 / 0 / 0
Регистрация: 13.12.2014
Сообщений: 13
05.01.2015, 19:03  [ТС] 5
Это не я делал, поэтому и прошу помощи.
0
05.01.2015, 19:03
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.01.2015, 19:03
Помогаю со студенческими работами здесь

Из двух упорядоченных одномерных массивов (длины K и N) сформируйте одномерный массив размером K+N, упорядоченный в обратную сторону
вот, что получилось, как-то не очень работает program zd115; uses crt; var b:array of...

Слияние двух упорядоченных списков в один упорядоченный
Даны два списка упорядоченные по не убыванию.Объединить их в третий список упорядоченный по не...

Слияние упорядоченных списков в третий (найдите ошибку)
Добрый вечер , возникла сложность с решением задачи : Слияние упорядоченных списков в третий....

слияние двух упорядоченных массивов в один упорядоченный
это слияние двух упорядоченных массивов в один упорядоченный, программу я сама напишу, тока...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Как преобразовать список списков в простой список в Python
bytestream 22.01.2025
При работе с Python разработчики часто сталкиваются с необходимостью обработки сложных структур данных, среди которых особое место занимают вложенные списки. Эти структуры представляют собой списки,. . .
Что такое GUID / UUID и как их создать
bytestream 22.01.2025
В мире разработки программного обеспечения существует постоянная потребность в уникальной идентификации объектов, записей и ресурсов. Эта задача становится особенно актуальной в распределенных. . .
Как добавить пустую директорию в репозиторий Git
bytestream 22.01.2025
При работе с системой контроля версий Git разработчики часто сталкиваются с ситуацией, когда необходимо сохранить пустую директорию в репозитории. Данная задача может показаться простой на первый. . .
Как валидировать адрес email в JavaScript
bytestream 22.01.2025
JavaScript, как основной язык веб-разработки, предоставляет разработчикам множество инструментов для реализации эффективной валидации email-адресов. От простых встроенных решений до сложных. . .
Как заменить все вхождения подстроки в JavaScript
bytestream 22.01.2025
Строки в JavaScript представляют собой неизменяемые последовательности символов, что делает их обработку особенно интересной с точки зрения оптимизации и выбора правильного подхода к решению задач. . . .
Управление версиями пакетов в Node.js. В чем разница между тильдой (~) и кареткой (^) в package.json
bytestream 22.01.2025
В современной разработке программного обеспечения управление версиями пакетов играет ключевую роль в обеспечении стабильности и надежности проектов. Node. js, как одна из самых популярных платформ для. . .
Аутентификация на сайте с помощью формы
bytestream 21.01.2025
В современном цифровом мире безопасная аутентификация становится краеугольным камнем защиты веб-приложений и пользовательских данных. Каждый день миллионы людей используют различные онлайн-сервисы,. . .
Как получить индекс в цикле for в Python
bytestream 21.01.2025
При работе с коллекциями данных в Python часто возникает необходимость не только получить доступ к элементам последовательности, но и знать их позицию в процессе итерации. Индексация в циклах. . .
Как определить адрес, из которого локальный репозиторий Git был клонирован
bytestream 21.01.2025
В современной разработке программного обеспечения система контроля версий Git стала неотъемлемой частью рабочего процесса. При работе с Git разработчики часто сталкиваются с необходимостью. . .
Какая разница между операторами == и === в сравнениях в JavaScript
bytestream 21.01.2025
В мире веб-разработки JavaScript занимает особое место как динамический язык программирования, предоставляющий разработчикам широкий набор инструментов для создания интерактивных веб-приложений. . . .
Из чего и как собрать свой домашний кинотеатр
bt_guru 21.01.2025
Создание домашнего кинотеатра: от идеи до реализации В современном мире домашний кинотеатр стал неотъемлемой частью комфортного жилого пространства, предоставляя возможность наслаждаться. . .
Ошибки стиральных машин
bt_guru 21.01.2025
Современные стиральные машины представляют собой сложные электронные устройства, оснащенные множеством датчиков и систем контроля. Они способны самостоятельно определять вес загруженного белья,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru