Zokirjonov Nurbek 951. 21 Tajriba ishi №8



Yüklə 28,8 Kb.
tarix19.10.2023
ölçüsü28,8 Kb.
#157010
Z.Nurbek 8-Tajriba ishi


Zokirjonov Nurbek
951.21

Tajriba ishi №8

          1. Murakkab saralash algoritmlari.Large sinfining qo’lanilishi


Ishning maqsadi: Murakkab saralash algoritmlari va Large sinfining qo’lanilishini o’rganish.

          1. Nazariy qism


Merge sort(birlashtirib saralash)
Shell sort (qisqarib boruvchi qadamlar orqali saralash)
Large numbers sort(katta sonlarni saralash)


Saralash – bu ma’lum bir ma’lumotlar tuzilmasidagi (masalan array)tartibsiz ma’lumotlarni ularning qandaydir xususiyatiga ko’ra tartiblab chiqish.
Saralashdan maqsad- tartiblangan to’plamda kerakli elementni topishni osonlashtirishdan iborat.
Saralashning tadbiqi:

Masalan array
array = [“abc”, ”aa”, “abbb”, “a” ]
-dastlabki tartibsiz xolat

array = [“a”,”aa”, “abbb”, “abc”]


-alifbo bo’yicha saralash

array = [“a”, “aa”, “abc”, “abbb”]


-uzunlik bo’yicha saralash
Merge sort (Birlashtirib saralash)- Merge Sort bu saralanmagan arrayni taqqoslashga asoslangan holda saralovchi algoritm bo’lib, uning ishlash prinsipi “Bo’lib tashla va hukmronlik qil” g’oyasi asosiga qurilgan. Saralangan massivlarni birlashtirish.

  • Ikkita saralangan massiv berilgan. Ularni birlashtirib shunday massiv hosil qilish qilish kerakki, u yana saralangan bo’lsin.

  • Xar safar hali ikki massivning hali ko’rilmagan qismlaridagi birinchi ikki elementni taqqoslaymiz. Ulardan kichigini olamiz. Bu jarayonni toki bitta massivning chetigacha chiqmagunga qadar davom ettiramiz. Ortib qolgan massiv elementlarini esa to’g’ridan to’g’ri natijaviy massiv iziga berilgan tartibda joylashtirib qo’yamiz.


Masalan quyida ikki saralangan massivlarni birlashtirib, saralangan bitta massiv hosil qilishni ko’rib chiqaylik:


6-Topshiriq
Sizga bir o’lchamli sonli massiv va k soni berilgan. Sizning vazifangiz k soniniberilgan massivdan izlovchi dastur tuzish. Ya’ni qaysi pozitsiyalarda ucharishini topish.Massiv indeksi 1 dan boshlanadi.
Kiruvchi ma’lumotlar
Birinchi qatorda n butun soni massiv elementlari soni berilgan(1≤n≤100). Ikkinchiqatorda n ta son - massiv elementlari bitta probel bilan ajratilib berilgan. Uchinchiqatorda izlanayotgan k soni berilgan.Massiv elementlari va k soni butun va moduljihatdan 1000 dan oshmaydi.
Chiquvchi ma’lumotlar
Birinchi qatorda k sonining necha marta uchrashini, ikkinchi qatorda esa bupozitsiyalarni o’sish tartibida bitta probel bilan ajratib chiqaring. Agar k soni umuman uchramasa 0 chiqaring.
Misollar



Kiruvchi ma’lumotlar

Chiquvchi ma’lumotlar

1

3
5 6 5
5

2
1 3

2

8
-8 9 -8 5 6 78 -8 8
-8

3
1 3 7

3

4
1 2 3 4
5

0


#include

using namespace std;

int main()
{
int n;
cout<<"n="; cin>>n;
int a[1000];
for(int i=1;i<=n;i++){
cin>>a[i];
}
int k,q=0;
cout<<"k="; cin>>k;
for(int i=1;i<=n;i++){
if(a[i]==k){
q++;
cout<
}
}
cout<
return 0;
}

Yüklə 28,8 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin