راسخون

مرتب سازی سریع (Quick Sort) در C++

mehdigerdali کاربر طلایی1
|
تعداد پست ها : 5587
|
تاریخ عضویت : خرداد 1390 
تابع مرتب سازی سریع در C++ که یکی از روش‌های مرتب‌ سازی آرایه است و به‌ دلیل مصرف حافظه کم، سرعت اجرای مناسب و پیاده‌ سازی ساده بسیار مورد قبول واقع شده‌ است.
 
/*
Sepehr Mohammad
www.SepehrM.com 
*/
void quickSort(int x[], int left, int right)
{

        int i = left, j = right;

        int tmp;

        int pivot = x[(left + right) / 2];


        while (i <= j)
        {

                while (x[i] < pivot)

                        i++;

                while (x[j] > pivot)

                        j--;

                if (i <= j)
                {

                        tmp = x[i];

                        x[i] = x[j];

                        x[j] = tmp;

                        i++;

                        j--;

                }

        }


        if (left < j)

                quickSort(x, left, j);

        if (i < right)

                quickSort(x, i, right);

}
cryingsphere کاربر نقره ای
|
تعداد پست ها : 375
|
تاریخ عضویت : اسفند 1389 

مرسی دوست عزیز