Ahsjdtuyfkya
Download 15.71 Kb.
|
bazis
- Bu sahifa navigatsiya:
- 2. Ketma-ket qidirish algoritmi
Rjywrehtzrjytmjchvchetrjymjchkvtrymjch Asydf Sjyduyf Asyjtdum Asrytjdu K Srydtmvk Srydtf Ahsjdtuyfkya Sjdufk 5astdjuyfkjb Hsrydtufkjb Hsytdcv Etrycv Ehtryv Asrydtuvjb Hsrydtvj Be Hrsyt Ytjdvjb Hrsydt Vkjhrs Ytvkjbh Tyjmjhvk,b Srhydtjuvkjb Rydtu Vkjbyjdt Bdyjtuf Kjb Dtuyfkb 6duyfkjb Yjuvk Bhry Jtumk 5rhyjtuk Thryjtuk Ya5rsyj Tdukjy5 Syjtudyfkj Ysyjdtukj Djt Uyfsjy Dthsryj Dtjhvhjrsy Tcvet Jryxmjgchv Esrxchv Hsrjytcjhv Srytcjh Veryc Hvsrdt Hvhrtsy Hvhtryt Jhvbhtry Vhsrydt Vbhsryt Jv Rydtjhv Hrythv Hrytjhv Hrytjhv Aeryjdt Hvj 5rytjhv 5rydtjukvj 5srydt Vhsry Tvje Rydtv Rytv V xchvxcjhWRehtsKerakli ma’lumotni roʻyxatdan qidirish nazariy dasturlashtirishning asosiy masalalaridan biri hisoblanadi. Qidirish algoritmlarni muhokama qilishda ma’lumotlar qandaydir roʻyxatni hosil qiluvchi yozuvlardan tuzilgan deb faraz qilamiz, qaysiki dasturdagi ma’lumotlar massivini namoyon qiladi. Yozuvlar yoki roʻyxat elementlari massivda ketma-ket joylashadi va ular orasida boʻsh joy yoʻq. Yozuvlarning barchasi roʻyxatda 1 dan N gacha raqamlangan. Qoidaga koʻra yozuvlar maydonlardan tuzilgan boʻlishi mumkin, lekin bizni bu maydonlardan kalit deb ataluvchi qiymat qiziqtiradi. Roʻyxatlar kalit maydon qiymatiga koʻra saralangan yoki saralanmagan boʻlishi mumkin. Saralanmagan roʻyxatda yozuvlar tartibi tasodifiy, saralanganida esa kalitning oʻsish tartibida joylashgan boʻladi. Saralanmagan roʻyxatda kerakli yozuvni qidirish butun roʻyxatni yozuv topilgunga qadar koʻrib chiqishga olib keladi. Bu qidirish algoritmlarining oddiy koʻrinishi. Koʻrishimiz mumkin bu algoritm uncha samarador emas, lekin u ixtiyoriy roʻyxatda ishlaydi. Saralangan roʻyxatda ikkilik qidirishdan foydalanish mumkin. Ikkilik qidirish tartiblanganlikka koʻra bir solishtirishda birdan ortiq elementlarni tashlab yuborishga asoslangan. Natijada qidirish samarador boʻladi. Odatda qidirish nafaqat kerakli elementni roʻyxatda bor yoʻqligini aniqlash uchun, balki topilgan kalit qiymatiga bogʻliq ma’lumotlarni olish uchun xizmat qiladi. Masalan, kalit qiymat xodimning raqami yoki tartib raqami yoxud boshqa istalgan yagona identifikator boʻlishi mumkin. Kerakli kalit topilgandan soʻng, dastur unga bogʻlangan ma’lumotlarni oʻzgartirishi mumkin yoki butun yozuvni chiqarishi mumkin. Oxir oqibatda qidirish algoritmi oldida muhim vazifa kalitning oʻrnini topish masalasi turadi. Shuning uchun qidirish algoritmlari kerakli kalitni saqlovchi yozuv indeksini beradi. Agar kalit qiymat topilmasa, u holda qidirish algoritmi massiv yuqori chegarasidan chiquvchi indeks qiymatini beradi. Maqsadimiz uchun faraz qilamizki, roʻyxat elementlari 1 dan N gacha raqamlangan. Bu agar maqsad elementi topilmasa 0 ni berishga imkon beradi. Oddiylik uchun kalit qiymat takrorlanmaydi deb faraz qilamiz. 2. Ketma-ket qidirish algoritmi Qidirish algoritmlarida qandaydir maqsad elementini roʻyxatdan qidirish jarayoni qiziqtiradi. Ketma-ket qidirishda biz doim roʻyxat saralanmagan deb faraz qilamiz, ammo ayrim qidirish algoritmlari saralangan roʻyxatlarda yaxshi unumdorlik koʻrsatadi. Ketma-ket qidirish algoritmi roʻyxat elementlarni birinchisidan boshlab to maqsad elementi topilgunga qadar birma bir koʻrib chiqadi. Ravshanki, aniq kalit qiymati qanchalik uzoqda joylashgan boʻlsa, shunchalik uni qidirishga koʻp vaqt sarflanadi. Buni ketma-ket qidirish algoritmi tahlilida hisobga olish kerak. Ketma-ket qidirish algoritmining umumiy koʻrinishi quyidagicha: SequentialSearch(list,target,N) list ko’riladigan ro’yxat target maqsad qiymati N ro’yxat elementlari soni for i=1 to N do if (target=list[i]) return i end if end for return 0 gfhjsyduf Download 15.71 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling