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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.04.2016, 19:01   #1
ilyakonst
Пользователь
 
Регистрация: 27.03.2016
Сообщений: 20
По умолчанию Сортировка списка вставками

Код:
void Sort(spisok *Head)
{
	double ttime, counttime = 0;
	spisok *p = NULL;
	ttime = clock();
	while (Head != NULL)
	{
		spisok *node = Head;
		Head = Head->next;
		if (p == NULL || node->a < p->a)
		{
			node->next = p;
			p = node;
		}
		else
		{
			spisok *current = p;
			while (current->next != NULL && !(node->a < current->next->a))
			{
				current = current->next;
			}
			node->next = current->next;
			current->next = node;
		}
		
		
	}
	ttime = clock() - ttime;
	ttime = ttime / CLOCKS_PER_SEC;
	mtime = mtime + ttime;	
	//printf("Time = %f\n", ttime);
	//printf("*******************************\n");
}
Написал функцию сортировки вставками, работает во всех случаях кроме одного, если дать отсортировать список такого типа:
6-5-4-3-2-1 или 7-4-1, т.е в обратном порядке. Помогите пожалуйста исправить ошибку
ilyakonst вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка двусвязного списка простыми вставками DarkVoin Общие вопросы C/C++ 2 17.02.2015 08:39
Сортировка списка прямыми включениями (вставками) gary jules Помощь студентам 0 30.05.2012 20:09
Сортировка списка методом выбора и простыми вставками Bottane4ka Помощь студентам 0 24.03.2012 20:35
Сортировка однонаправленого списка вставками. gvilon Паскаль, Turbo Pascal, PascalABC.NET 0 08.11.2011 23:39