|
-tajriba ishi. QIDIRUV USULLARINI TADQIQ QILISH
|
bet | 2/3 | Sana | 19.05.2024 | Hajmi | 381,24 Kb. | | #244429 |
Bog'liq mta 1-amaliy ish husniddin 2-tajriba ishi. QIDIRUV USULLARINI TADQIQ QILISH
Ishdan maqsad: talabalar berilgan tuzilmaning shakliga qarab biror kalitga mos elementni qidirishning optimal usulini qo’llashni o’rganishlari va qidiruv usullarining samaradorligini taqqoslashlari kerak.
Qo’yilgan masala: topshiriq variantidagi masalani so’ralayotgan qidiruv usuli yordamida yechishning C++ tilidagi dasturini yaratish ko’nikmasiga ega bo’lish.
Ish tartibi:
Laboratoriya ishi nazariy ma’lumotlarini o’rganish;
Berilgan topshiriqning algoritmini ishlab chiqish;
C++ dasturlash muhitida dasturni yaratish;
Natijalarni tekshirish;
Hisobotni tayyorlash va topshirish.
Topshiriq
Variantlar:
Ketma-ket qidiruv usulidan foydalanib, ro‘yhat eng kichik elementini toping.
#include
#include
int smallestElement(const std::vector& royhat) {
if (royhat.empty()) {
// Agar ro'yxat bo'sh bo'lsa, xatolik qaytarish
std::cerr << "Xatolik: Ro'yxat bo'sh" << std::endl;
return -1;
}
int engkichik = royhat[0]; // Boshlang'ich elementni kiritamiz
for (int i = 1; i < royhat.size(); ++i) {
// Agar joriy element engkichikdan kichik bo'lsa, yangi engkichikni sozlaymiz
if (royhat[i] < engkichik) {
engkichik = royhat[i];
}
}
return engkichik;
}
int main() {
// Ro'yxat
std::vector royhat = {9, 78, 56, 25, 85, 5, 90, 10, 77};
// Ro'yxatni chiqarish
std::cout << "Ro'yxat: ";
for (int element : royhat) {
std::cout << element << " ";
}
std::cout << std::endl;
// Eng kichik elementni topish
int engkichik = smallestElement(royhat);
// Natija chiqarish
if (engkichik != -1) {
std::cout << "Eng kichik element: " << engkichik << std::endl;
}
return 0;
}
|
| |