Декдаги асосий амаллар
int kirit_right(int s){
if(isFull()){cout<<"\n dek to'ldi";n=R;return EXIT_SUCCESS;}
a[R]=s;R++;
}
bool isEmpty(){
if(R==0) return true; else return false;
}
bool isFull(){
if(R>=10) return true; else return false;
}
int olish_right(){
if(isEmpty()){cout<< "\n dek bo'sh";return EXIT_SUCCESS;}
R--;
return a[R];
}
Декдаги асосий амаллар
int kirit_left(int s){
if(isFull()){cout<< "\n dek to'ldi";n=R; return EXIT_SUCCESS;}
for(int i=R;i>0;i--)
a[i]=a[i-1];
a[0]=s;R++;
}
int olish_left(){
if(isEmpty()){cout<< "\ndek bo'sh";return EXIT_SUCCESS;}
int t=a[0];
for(int i=0;i
a[i]=a[i+1];
R--;
return t;
}
2-Мавзу бўйича назорат саволлари - Қайси статик тузилма энг оддий хисобланади?
- Вектор деб нимага айтилади?
- Массив ҳақида тушунча.
- Ёзув деганда нимани тушунасиз?
- Ёзувни эълон қилиш қандай амалга оширилади
- Жадвални асосий элементларини санаб беринг.
- Уларнинг асосий хусусиятларини айтиб беринг.
- Статик турдаги маълумотлар тузилмаси устида бажарилиши мумкин бўлган амаллар.
REJA 1.Qidiruv tushunchasi va uning vazifasi 2.Chiziqli qidiruv (kerma –ket ) 3. Indeksli ketma ket qidiruv 4. Binar (oraliqni teng ikkiga bo‘lish orqali) qidiruv 5. Qidirish usullari samaradorligi
3-Mavzu: Ma’lumotlarni qidirish usullari, algoritmlar va ularning samaradorligi
.
Qidiruv tushunchasi va uning vazifasi Ma’lumotlarni qayta ishlashda qidiruv asosiy amallardan biri bo‘lib, uning vazifasi berilgan argument (kalit) bo‘yicha ma’lumotlar bazasi ichidan mazkur argumentga mos ma’lumotlarni topish yoki yo‘qligini aniqlashdan iborat. Agar kerakli ma’lumot yo‘q bo‘lsa, u holda ikkita ishni amalga oshirish mumkin: - ma’lumot yo‘qligini belgilash;
- jadvalga ma’lumotni qo‘yish.
Ixtiyoriy ma’lumotlar majmuasi jadval yoki fayl deb ataladi. Ixtiyoriy ma’lumot (yoki tuzilma elementi) boshqa ma’lumotdan biror bir belgisi orqali farq qiladi. Mazkur belgi kalit deb ataladi. Kalit ikki xil bo‘lishi mumkin: - birlamchi(takrorlanmaydi, noyob);
- ikkilamchi(takrorlanadi).
Qidiruv tushunchasi va uning vazifasi Ta’rif. Agar kalitlar ma’lumotlar jadvalidan ajratib olinib alohida fayl sifatida saqlansa, u holda bunday kalitlar tashqi kalitlar deyiladi. Aks holda, ya’ni yozuvning bir maydoni sifatida jadvalda saqlansa, ichki kalit deyiladi. Qidiruvning maqsadi - quyidagi jarayonlarning birini bajarilishidan iborat: - topilgan yozuvni o‘qish;
- qidirilayotgan yozuv topilmasa, uni jadvalga qo‘yish;
- topilgan yozuvni o‘chirish.
Faraz qilaylik, k – kalitlar massivi bo‘lsin. Har bir k(i) uchun r(i) – ma’lumot mavjud. Key – qidiruv argumenti, unga rec yozuvi to’g’ri keladi. Jadvaldagi ma’lumotlarning tuzilmasiga qarab qidiruvni bir necha turlari mavjud.
Chiziqli yoki ketma-ket qidiruv (massivda)
Algoritm g‘oyasi
Ma’lumotlar butun jadval bo‘yicha operativ xotirada kichik adresdan boshlab, to katta adresgacha ketma-ket qarab chiqiladi.
Eslatma
Chiziqli algoritmdan agar ma’lumotlar jadvali tartibsiz yoki ular tuzilishi noaniq bo‘lsa foydalanish tavsiya etiladi.
Psevdokod:
For i:=1 to n
If k(i)=key then
Search= i
return
EndIf
Next i
Search= 0
return
Search o’zgaruvchi topilgan elementning nomerini saqlaydi.
Izoh
Agar ma’lumotlar jadvali massiv ko‘rinishda bo‘lsa, u holda, asosan, algoritm natijasi sifatida topilgan element o‘rni qaytariladi.
Do'stlaringiz bilan baham: |