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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2010, 02:57   #1
Girumm
Новичок
Джуниор
 
Регистрация: 05.07.2010
Сообщений: 3
По умолчанию Вопрос про линейные списки

Здравствуйте.Решаю задачу про линейный список:Даны два упорядоченных списка.Вставить элементы второго списка в первый не нарушая упорядоченности.
Решил сделать для случая когда списки не упорядочены. Сделать сортировку получилось,а вот как вставить элементы проблема.
Пробую реализовать для очереди.
Код очень черновой,поэтому там в фун много лишнего Заранее спасибо
Код:
void insert_list (Queue &Q,Queue &Q1)
{
	Node *top=Q.Head,*end=Q.Tail,*p,*q=Q.Head,tmp;
	Node *top1=Q1.Head1,*end1=Q1.Tail1,*p1,*q1=Q1.Head1,tmp1;
	p1=q1;
	while(Q1.Head1!=NULL)
	{
		
		for(p=Q.Head;p->next!=0;p=p->next)
			if(p1->x1>p->x && p1->x1<p->next->x)
			{
				Q1.Head1=Q1.Head1->next1;
				p1->next1=p->next;
				p->next=p1;
				

			}
			else if(p1->x1<Q.Head->x)
			{
				Q1.Head1=Q1.Head1->next1;
				p1->next1=Q.Head;
				Q.Head=p1;
			}
			else if(p1->x1>Q.Tail->x)
			{
				Q1.Head1=Q1.Head1->next1;
				p1->next1=NULL;
				Q.Tail->next=p1;
				Q.Tail=p1;
			}
			p1=Q1.Head1;
	}
}

Последний раз редактировалось Girumm; 05.07.2010 в 10:56.
Girumm вне форума Ответить с цитированием
Старый 05.07.2010, 11:47   #2
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

а тот список, который нужно вставить упорядочен?
NiCola999 вне форума Ответить с цитированием
Старый 05.07.2010, 15:32   #3
Girumm
Новичок
Джуниор
 
Регистрация: 05.07.2010
Сообщений: 3
По умолчанию

Да,есть два упорядоченных списка,вставить второй в первый.
Girumm вне форума Ответить с цитированием
Старый 07.07.2010, 00:21   #4
Girumm
Новичок
Джуниор
 
Регистрация: 05.07.2010
Сообщений: 3
По умолчанию

Всё, задачу решил.

Последний раз редактировалось Girumm; 07.07.2010 в 02:28.
Girumm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Линейные списки Dead Romantic Помощь студентам 0 30.05.2010 21:35
Линейные списки Rusl92 Паскаль, Turbo Pascal, PascalABC.NET 3 26.04.2010 09:24
Двусвязные линейные списки (С++) valdemar593 Помощь студентам 2 29.03.2010 10:43
Линейные списки ManU Помощь студентам 1 03.11.2008 21:20