Dastur namunasi. Biz quyida namuna sifatida ma’lumotlarni saralash bilan bog‘liq
masalani
qaraymiz. Masalani Quicksort va MergeSort usullari yordamida yechish algoritmini (psevdokod
shaklida) ishlab chiqamiz va uni C++ tilidagi dasturga o‘tkazamiz.
Amaliy ish topshirig‘i sharti. N ta sondan iborat massiv berigan.
Massivni QuickSort usuli
bilan tartibga keltirish
dasturini tuzamiz
Masalani yechish algoritmi (Quicksort saralash usuli)
.
Dastur kodi
#include
using namespace std;
int partition(int *a,int start,int end)
{
int pivot=a[end];
int P_index=start;
int i,t;
for(i=start;i{
if(a[i]<=pivot)
{
t=a[i];
a[i]=a[P_index];
a[P_index]=t;
P_index++;
}
}
t=a[end];
a[end]=a[P_index];
a[P_index]=t;
return P_index;
}
void Quicksort(int *a,int start,int end)
{
if(start{
int P_index=partition(a,start,end);
Quicksort(a,start,P_index-1);
Quicksort(a,P_index+1,end);
}
}
int main()
{
int n;
cout<<"Elementlar sonnini toping: ";
cin>>n;
int a[n];
cout<<"Massiv elementlarini kiriting:\n";
for(int i=0;i{
cin>>a[i];
}
Quicksort(a,0,n-1);
cout<<"Saralangan massiv:\n";