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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.04.2011, 17:10   #1
Anubys
Форумчанин
 
Регистрация: 08.05.2010
Сообщений: 177
Печаль Проблема с сортировкой

У меня тут проблема с быстрым сортировкой без рекурсии подправьте пожалуйста
Ниже скрин программы и прог. код


Код:
#include <iostream.h>
#include <stdlib.h>
#include <vcl.h>
#pragma hdrstop

//---------------------------------------------------------------------------
int partition(int *a, int l, int r)
{
	float x=a[l];
	int i=l-1;
	int j=r+1;

	while(1)
	{
		do{ j--; } while(a[j]>x);
		do{ i++; } while(a[i]<x);
		if(i<=j)
		{
		swap(a[i],a[j]);
		}
		else return j;
	}
}
void quicksort(int *array, int left, int right)
{
    int stack[1024]; 
	int i=0;
    stack[i++] = left; 
	stack[i++] = right;
    while (i > 0) 
    { 
        right = stack[--i]; 
        left = stack[--i]; 
        if (left >= right) 
             continue; 
        int index = partition(array, left, right);
        stack[i++] = left;
        stack[i++] = index - 1; 
        stack[i++] = index + 1;
        stack[i++] = right; 
    }
}


int main(int argc, char* argv[])
{
	int arr[20];
	srand(time(0));
	for (int i = 0; i < 20; i++)
	{
		arr[i] = rand()%25;
		cout << arr[i] << '\t';
	}

	cout << endl;
	cout << endl;
	quicksort(arr,0,20-1);
	for (int i = 0; i < 20; i++)
	{
		cout << arr[i] << '\t';
	}
	system("pause");
}

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


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема с сортировкой вставками Brabus Помощь студентам 4 27.06.2010 12:27
помогите с сортировкой... DIzza Паскаль, Turbo Pascal, PascalABC.NET 3 16.06.2009 00:46
Помогите с сортировкой в C++. Vollmond36 Помощь студентам 1 02.12.2008 23:06
Помогите с сортировкой. Dissonance БД в Delphi 14 05.06.2008 15:35