Dastur kodi
#include
#include
using namespace std;
struct table{
int t;
string FIO;};
int q=0;
void qs(table *a,int first,int last){
int i = first, j = last;table x =a[(first + last) / 2];
do {
while (a[i].FIO < x.FIO) i++;
while (a[j].FIO > x.FIO) j--;
if(i <= j) {
if (i < j){ swap(a[i], a[j]);q++;}
i++;
j--;
}
} while (i <= j);
if (i < last)
qs(a,i,last);
if (first < j)
qs(a,first,j);
}
int main(int args, char *argv[])
{ int n;cout<<"n=";cin>>n;
table student[n];
for(int i=0;i
student[i].t=i+1;
cin>>student[i].FIO;
}
qs(student,0,n-1);
for(int i=0;i
cout<
cout<<"quicksort algoritmi "<
}
Dastur natiyjesi:
studentler sanin kiritin=5
5 ta studntler FIO sin kiritiń
Farhod
Asror
Sobir
Bobur
Vali
| 2 | Asror |
| 4 | Bobur |
| 1 | Farhod |
| 3 | Sobir |
| 5 | Vali |
Bul algoritm kesteni 3 ta orinlaniwa saraladi
Bir o'lshewli massivde saralaw
Sálem men bul maqalamda sizlerge bir ólshewli massivte saralaw qanday ámelge asırıw múmkinligin kórsetip bermekshimen. Odan aldın massiv ózi ne? degen sorawǵa juwap tabayiq. Massiv bul bir tip astında nomerlengen maǵlıwmatlar kompleksi bolıp tabıladı.
Massivti jariya qiliw
#include
using namespace std;
int main(){
long a[100], double b[100];
return 0;
}
Biz bul jerde Pútin tipli a hám haqıyqıy tipli b dızbeklerdi járiyaladıq hám olar saqlay alatuǵın elementler sanın 100 dep belgiledik. Bul massivlerimiz hár biri101 element menen isley aladı sebebi c++ programmalastırıw tilinde indeks 0 den baslanadı. Massivlerdi bunday járiyalaw yaddan utiliwga alıp keledi, yaǵnıy paydalanıwshı 101 elementti isletpese de programma yaddan massiv ushın 101 jay ajıratıp turadı. Biz bul mashqalanı sheshiwimiz ushın paydalanıwshıǵa kerekli bolǵan massiv ólshewin kirgiziwin soraymiz.
#include
using namespace std;
int main(){
long n;
cin >> n;
long a[n], double b[n];
return 0;
}
Paydalanıwshı n ózgeriwshisine manis bergennen keyin onıń ma`nisi biz daǵaza qılıp atırǵan massiv uzınlıǵın belgilep beredi.
Massiv elementlerine manis beriw.
#include
using namespace std;
int main(){
long n, i;
cin >> n;
long a[n];
for (i = 1; i <= n; i++)
cin >> a[i]
return 0;
}
Maqalam basında massiv indeksleri 0 den baslanadı degen edim biraq bul jerde massivtiń birinshi indeksli elementinen baslap manis berip basladım sebebi massivtin 0 indeksli elementi bizge saralaw ushın kerek boladı
Massiv elementlerin chop etish.
#include
using namespace std;
int main(){
long n, i;
cin >> n;
long a[n];
for (i = 1; i <= n; i++)
cin >> a[i];
for (i = 1; i <= n; i++)
cout << a[i] << " ";
return 0;
}
Massiv elementlarin kiritiw ham shigariwdi uyrenip aldiq endi olardi saralawdi uyrenemiz.
#include
Do'stlaringiz bilan baham: |