O`ZBEKISTON RESPUBLIKASI RAQAMLI TEXNOLOGIYALAR VAZIRLIGI
Muhammad Al-Xorazmiy nomidagi Toshkent axborot texnologiyalari universiteti Nurafshon filiali Ma’lumotlar tuzilmasi va algoritmlari fanidan 4-5-6 mavzular yuzasidan amaliyot topshiriqlari
Bajardi: 210-22 guruh Talabasi:Abdulakimov Diyorbek Tekshirdi: Karimov Sodiqjon Shodiyor o’g’li
Toshkent -2023 1. Ma’lumotlarni qidirish algoritmlari. Qidiruv tushunchasi va uning vazifasi. Chiziqli qidiruv. Binar qidiruv. Qidirish usullari samaradorligi va optimallashtirish. #include using namespace std; int main() { int i, arr[10], num, first, last, middle; cout<<"10 ta element kiriting: "; for(i=0; i<10; i++) cin>>arr[i]; cout<<"\nKiritilgan ma'lumotlarni qidirish: "; cin>>num; first = 0; last = 9; middle = (first+last)/2; while(first <= last) { if(arr[middle] first = middle+1; else if(arr[middle]==num) { cout<<"\nRaqam, "< break; } else last = middle-1; middle = (first+last)/2; } if(first>last) cout<<"\nRaqam, "< cout< return 0; } 2. Ma’lumotlarni xeshlash algoritmlari. Xesh jadval va xesh funksiyalari. //Ma’lumotlarni xeshlash algoritmlari. Xesh jadval va xesh funksiyalari. #include using namespace std; int main() { string s; cout << "Raqam kiriting:\n"; cin >> s; int sum = 0; for (int i = 0; i < s.length(); i += 2) { if (i + 1 < s.length()) sum += stoi(s.substr(i, 2)); else sum += stoi(s.substr(i, 1));} cout << s << "->" << sum % 10; return 0; } Ma’lumotlarni saralash algoritmlari. Saralash tushunchasi va uning vazifasi. Saralashning qat’iy usullari. Saralashning yaxshilangan usullari.
#include using namespace std; int main() { vector numbers = {4, 2, 5, 1, 7, 3, 8, 6, 9}; // Birinchi 5 ta elementni o'sish tartibida qisman tartiblang partial_sort(numbers.begin(), numbers.begin() + 5, numbers.end()); // Qisman tartiblangan elementlarni chop eting cout << "O'rtagacha qisman tartiblangan elementlar: "; for (int i = 0; i < 5; i++) cout << numbers[i] << " "; cout << endl; // Qisman tartiblangan diapazondan tashqaridagi asl elementlar o'zgarishsiz qoladi cout << "O'rtadan keyin asl elementlar: "; for (int i = 5; i < numbers.size(); i++) { cout << numbers[i] << " ";} return 0; }