Kalitlar saqlanishiga nisbatan ichki va tashqi deyiladi. Agar kalitlar maʼlumotlar jadvalidan ajratib olinib alohida fayl sifatida saqlansa, u holda bunday kalitlar tashqi kalitlar deyiladi. Аks holda, yaʼni yozuvning bir maydoni sifatida jadvalda saqlansa ichki kalit deyiladi. Qidiruv usullari va algoritmlari Jadvaldagi maʼlumotlarning tuzilmasiga qarab qidiruvni bir necha turlari mavjud: - Chiziqli yoki ketma-ket qidiruv (Linear search)
- Binar yoki oraliqni teng ikkiga bo’lish orqali qidiruv (Binary search)
- O’tish yoki o’tqazishlar orqali qidiruv (Jump search)
- Xeshlash yoki kalitlarni akslantirish orqali qidiruv (Hash-based Search)
Chiziqli yoki ketma-ket qidiruv (Linear search) Izoh: algoritmdan ixtiyoriy tartibda ( ya’ni tartibsiz) joylashgan maʼlumotlar jadvalida foydalanish mumkin. ALGORITM G’OYASI: Ma’lumotlarning birinchi elementidan oxirgi elementiga qadar ketma-ket qarab chiqiladi va har qadamda element qidirilayotgan kalit bilan taqqoslanadi. Agar element kalitga mos bo’lsa, jarayon to’xtatiladi. Agar oxirgi element ko’rib chiqilganda jarayon to’xtatilmagan bo’lsa, u xolatda ma’lumot topilmaganligini anglatadi. Chiziqli yoki ketma-ket qidiruv
// Chiziqli qidiruv funktsiyasi
int search (int arr[], int N, int key)
{
for (int i = 0; i < N; i++)
if (arr[i] == key)
return i;
return -1;
}
// dasturda funktsiyadan
// foydalanish misoli
int main ()
{
int A[5] = {10,30,20,40,50};
cout << search (A,5,25);
return 0;
}
Bu yerda:
arr[] – ma’lumotlar to’plami
key – qidirilayotgan ma’lumot
Binar yoki oraliqni teng ikkiga bo’lish orqali qidiruv (Binary search) Izoh: algoritmdan faqatgina maʼlumotlar jadvali tartiblangan boʼlsagina foydalanish mumkin.
Do'stlaringiz bilan baham: |