Ishdan maqsad: Chiziqli, bir bog‗lamli ro‗yhatlar tuzilmasini o‗rganish va uni ustida amal bajarish algoritmlarini tadqiq qilish. Qo‗yilgan masala



Yüklə 218,5 Kb.
tarix02.01.2022
ölçüsü218,5 Kb.
#46883
Ahadjon Karimov


O'zbekiston Respublikasi Axborot texnologiyalari

Va kommunikatsiyalarini rivojlantirish vazirligi.

Muhammad al-Xorazmiynomidagi Toshkent Axborot texnologiyalari universiteti

Malumotlar tuzilmasi va algoritmlar


“ Labaratoriya №3“

Bajaruvchi: 411-20 – guruhtalabasi Ahadjon Karimov


Tekshiruvchi :Xojiyeva Nasiba

Laboratoriya ishi: Chiziqli, bir bog‗lamli royhatlar tuzilmasini organish va uni ustida amal bajarish
algoritmlarini tadqiq qilish.

Ishdan maqsad: Chiziqli, bir bog‗lamli ro‗yhatlar tuzilmasini o‗rganish va uni
ustida amal bajarish algoritmlarini tadqiq qilish.
Qo‗yilgan masala: C++ tilida ro‗yhatli tuzilma elementlarini ko‗rsatkichli
maydonlar bilan yaratish va dinamik tuzilmani e‘lon qilish, uning ustida turli
amallar bajarish dasturini ishlab chiqish.
Ish tartibi:
Tajriba ishi nazariy ma‘lumotlarini o‗rganish;
Berilgan topshiriqning algoritmini ishlab chiqish;
C++ dasturlash muhitida dasturni yaratish;
Natijalarni tekshirish;
Hisobotni tayyorlash va topshirish.

Dinamik ma‘lumotlar tuzilmasi
Statik ma‘lumotlar tuzilmasi vaqt o‗tishi bilan o‗z o‗lchamini o‗zgartirmaydi.
Biz har doim dastur kodidagi statik ma‘lumotlar tuzilmasiga qarab ularning

o‗lchamini bilishimiz mumkin. Bunday ma‘lumotlarga teskari ravishda dinamik
ma‘lumotlar tuzilmasi mavjud bo‗lib, bunda dastur bajarilishi davomida dinamik
ma‘lumotlar tuzilmasi o‗lchamini o‗zgartirishi mumkin. 
– bu qandaydir bir qonuniyatga asoslanib shakllangan, lekin
elementlari soni, o‗zaro joylashuvi va o‗zaro aloqasi dastur bajarilishi davomida
shu qonuniyat asosida dinamik o‗zgaruvchan bo‗lgan

Dastur savoli: Ro‘yhat elementlari o‘sish tartibida joylashtirilsin.


Dastur kodi:

#include

void swap(int* xp, int* yp)

{

int temp = *xp;

*xp = *yp;

*yp = temp;

}

void selectionSort(int arr[], int n)

{

int i, j, min_idx;

for (i = 0; i < n - 1; i++) {

min_idx = i;

for (j = i + 1; j < n; j++)

if (arr[j] < arr[min_idx])

min_idx = j;

swap(&arr[min_idx], &arr[i]);

}

}

void printArray(int arr[], int size)

{

int i;

for (i = 0; i < size; i++)

printf("%d ", arr[i]);

printf("\n");

}

int main()

{

int arr[] = { 0, 23, 14, 12, 9 };

int n = sizeof(arr) / sizeof(arr[0]);



printf("Original array: \n");

printArray(arr, n);

selectionSort(arr, n);

printf("\nO'sish tartibida tartiblangan massiv: \n");

printArray(arr, n);

return 0;

}


Yüklə 218,5 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