xash jadval yaratish

DOCX 10 стр. 22,9 КБ Бесплатная загрузка

Предварительный просмотр (5 стр.)

Прокрутите вниз 👇
1 / 10
30.mavzu: xash jadval yaratish reja. xash jadvali xash jadvali - bu ba'zi funktsiyalar (xash funktsiyasi) tomonidan ko'rsatilgan maxsus manzilga ega oddiy qator. hash funktsiyasi element kalitini jadvaldagi ba'zi indekslarga o'zgartiradigan funktsiya ( xash jadvali) deyiladi xeshlash funktsiyasi yoki xash funktsiyasi : i = h (kalit ); qayerda kalit- konvertatsiya qilinadigan kalit; i- natijada jadvalning indeksi, ya'ni. kalit to'plamda ko'rsatiladi, masalan, butun sonlar ( xash manzillari ), keyinchalik ma'lumotlarga kirish uchun ishlatiladi. shu tarzda xashlash - bu maxsus jadvalda o'z o'rnini aniqlash uchun kalit qiymatidan foydalanishni o'z ichiga olgan usul. biroq, joylashtirish funktsiyasi mumkin bir nechta yagona kalit qiymatlari bir xil pozitsiya qiymatini beradi i xash jadvalida. ikki yoki undan ortiq kalit bir xil indeksni (xash manzilini) oladigan holat deyiladi to'qnashuv (qarama -qarshilik) xeshlashda .. shuning uchun xesh sxemasi o'z ichiga olishi kerak nizolarni hal qilish algoritmi pozitsiya bo'lsa, harakatlar tartibini belgilash i=h(kalit) boshqa kalit bilan allaqachon band bo'lgan rekord bo'lib …
2 / 10
ifalarda, ikki yoki undan ortiq kalit bir xil tarzda ajratiladi, lekin ular xash jadvalidagi bitta katakchani egallay olmaydi. ikki bor mumkin bo'lgan variantlar: yoki yangi kalit uchun boshqa pozitsiyani toping yoki xesh jadvalining har bir indeksi uchun alohida ro'yxat tuzing, unda ushbu indeksga mos keladigan barcha kalitlar mavjud. bu variantlar ikkita klassik xesh sxemasini ifodalaydi: chiziqli tekshirish yordamida ochiq manzil usuli bilan xeshlash - chiziqli zond ochiq murojaat qilish. zanjirlar usuli bilan xeshlash (ro'yxatlar bilan) yoki ko'p o'lchovli xash deb ataladigan - zanjirlash bilan alohida ro'yxatlar; chiziqli tekshirish yordamida manzilni aniqlashning ochiq usuli . dastlab, oddiy o'lchamli massiv bo'lgan xash jadvalining barcha katakchalari band bo'lmagan deb belgilanadi. shuning uchun, yangi kalit qo'shganda, bu hujayraning bandligi tekshiriladi. agar hujayra band bo'lsa, algoritm bo'sh joy topilmaguncha ("ochiq manzil") dumaloq skanerlashni amalga oshiradi. bular. bir hil kalitlarga ega elementlar olingan indeks yaqinida joylashtiriladi. bundan tashqari, qidiruvni amalga oshirayotganda, joy birinchi navbatda kalit bilan …
3 / 10
deksni hisoblash i; tegishli zanjirda qidiring. yangi element qo'shganda qidiruvni yaxshilash uchun siz kiritish algoritmini ro'yxatning oxirida emas, balki buyurtma berishda ishlatishingiz mumkin, ya'ni. ga element qo'shing to'g'ri joy. to'g'ridan -to'g'ri murojaat qilish usulini chiziqli tekshirish yordamida amalga oshirishga misol ... dastlabki ma'lumotlar e'lon qilingan tuzilish turidagi 7 ta yozuv (soddaligi uchun, ma'lumot qismi faqat butun ma'lumotlardan iborat): int kaliti; // kalit int ma'lumotlari; // ma `lumot (59.1), (70.3), (96.5), (81.7), (13.8), (41.2), (79.9); xash jadval o'lchami m = 10. hash funktsiyasi i=h(ma'lumotlar) =ma'lumotlar.kalit%o'n; o'sha. 10 ga bo'lingandan keyin qolgan qismi i. dastlabki ma'lumotlarga asoslanib, biz jadvalni ketma -ket to'ldiramiz. birinchi beshta kalitni aralashtirish turli indekslarni beradi (xash manzillari): birinchi to'qnashuv 81 va 41 tugmachalari o'rtasida sodir bo'ladi - 1 -indeksli joy olinadi. shuning uchun, biz eng yaqin bo'sh joyni topish uchun xash jadvaliga qaraymiz, bu holda i = 2. keyingi 79 -kalit ham to'qnashuvni keltirib chiqaradi: 9 -pozitsiya allaqachon …
4 / 10
iga yangi element qo'shiladi. shunday qilib, 41 -kalitli element 81 -tugmachadan keyin, 79 -tugmachali element esa 59 -kalitli banddan keyin joylashtiriladi. shaxsiy topshiriqlar 1. ikkilik daraxtlar. tasodifiy sonlar generatori dasturidan foydalanib, 1 dan 99 gacha 10 qiymatni oling va ikkilik daraxtni yarating. yo'lni aylantiring: 1.a chapdan o'ngga o'tish: chap-ildiz-o'ng: avval chap pastki daraxtga, so'ngra ildizga va nihoyat o'ng pastki daraxtga tashrif buyuring. (yoki aksincha, o'ngdan chapga: o'ng - ildiz - chap) 1.b yuqoridan pastgacha o'tish: ildiz-chap-o'ng: pastki daraxtlar uchun ildizga tashrif buyuring. 1.c pastdan yuqoriga o'tish: chapdan o'ngga ildiz: pastki daraxtlardan keyin ildizga tashrif buyuring ushbu maqolaning bir qismi sifatida men sizga aytaman xash nima, nima uchun kerak, qaerda va qanday ishlatiladi, shuningdek eng mashhur misollar. ko'pgina axborot texnologiyalari vazifalari ma'lumotlar uchun juda muhim. masalan, agar siz har biri 1 kb hajmdagi ikkita fayl va har biri 10 gb bo'lgan ikkita faylni solishtirishingiz kerak bo'lsa, bu vaqt butunlay boshqacha. shuning …
5 / 10
bu hash funktsiyasining chiqish qiymati, ya'ni aniqlangan uzunlikdagi blok. ko'rib turganingizdek, atamalar biroz obrazli tavsifga ega, ulardan bu nima uchun kerakligini tushunish qiyin. shuning uchun, men darhol kichik bir misol keltiraman (qolgan ilovalar haqida birozdan keyin gaplashaman). aytaylik, sizda 10 gb bo'lgan 2 ta fayl bor. sizga qaysi biri kerakligini tezda qanday aniqlash mumkin? fayl nomidan foydalanish mumkin, lekin uni qayta nomlash oson. siz sanalarni ko'rishingiz mumkin, lekin fayllarni nusxalashdan keyin sanalar bir xil yoki boshqa ketma -ketlikda bo'lishi mumkin. o'lcham, siz tushunganingizdek, yordam bera olmaydi (ayniqsa, o'lchamlari bir xil bo'lsa yoki siz baytlarning aniq qiymatlariga qaramagan bo'lsangiz). bu erda bu hash kerak, bu faylning manba matnidan tuzilgan qisqa blok. bu 10 gigabaytli ikkita fayl ikki xil, lekin qisqa hashcodlarga ega bo'ladi ("accac43535" va "bbb3232a42" kabi). ulardan foydalanib, siz tezda bilib olishingiz mumkin kerakli fayl, nomlarni nusxalash va o'zgartirgandan keyin ham. eslatma: hash kompyuter dunyosida va internetda juda mashhur tushuncha …

Хотите читать дальше?

Скачайте все 10 страниц бесплатно через Telegram.

Скачать полный файл

О "xash jadval yaratish"

30.mavzu: xash jadval yaratish reja. xash jadvali xash jadvali - bu ba'zi funktsiyalar (xash funktsiyasi) tomonidan ko'rsatilgan maxsus manzilga ega oddiy qator. hash funktsiyasi element kalitini jadvaldagi ba'zi indekslarga o'zgartiradigan funktsiya ( xash jadvali) deyiladi xeshlash funktsiyasi yoki xash funktsiyasi : i = h (kalit ); qayerda kalit- konvertatsiya qilinadigan kalit; i- natijada jadvalning indeksi, ya'ni. kalit to'plamda ko'rsatiladi, masalan, butun sonlar ( xash manzillari ), keyinchalik ma'lumotlarga kirish uchun ishlatiladi. shu tarzda xashlash - bu maxsus jadvalda o'z o'rnini aniqlash uchun kalit qiymatidan foydalanishni o'z ichiga olgan usul. biroq, joylashtirish funktsiyasi mumkin bir nechta yagona kalit qiymatlari bir xil pozitsiya qiymatini beradi i xash jadvalida. i...

Этот файл содержит 10 стр. в формате DOCX (22,9 КБ). Чтобы скачать "xash jadval yaratish", нажмите кнопку Telegram слева.

Теги: xash jadval yaratish DOCX 10 стр. Бесплатная загрузка Telegram