Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> प्रोग्रामिंग

स्टेटिक परफेक्ट हैशिंग

परफेक्ट हैशिंग की परिभाषा

परफेक्ट हैशिंग को हैशिंग के एक मॉडल के रूप में परिभाषित किया गया है जिसमें n तत्वों के किसी भी सेट को समान आकार की हैश तालिका में संग्रहीत किया जा सकता है और निरंतर समय में लुकअप किया जा सकता है। इसका विशेष रूप से आविष्कार और चर्चा फ़्रेडमैन, कोमलोस और ज़ेमेरेडी (1984) द्वारा की गई थी और इसलिए इसे "FKS हैशिंग" के रूप में उपनाम दिया गया है।

स्टेटिक हैशिंग की परिभाषा

स्टेटिक हैशिंग हैशिंग समस्या के दूसरे रूप को परिभाषित करता है जो उपयोगकर्ताओं को अंतिम डिक्शनरी सेट पर लुकअप को पूरा करने की अनुमति देता है (जिसका अर्थ है कि डिक्शनरी में सभी ऑब्जेक्ट अंतिम हैं और साथ ही बदलते नहीं हैं)।

आवेदन

चूंकि स्थिर हैशिंग के लिए आवश्यक है कि डेटाबेस, उसकी वस्तुएं और संदर्भ समान रहें, इसके अनुप्रयोग सीमित हैं। डेटाबेस जिनमें ऐसी जानकारी होती है जो दुर्लभ परिवर्तन का अनुभव करती हैं, वे भी पात्र हैं क्योंकि इसके लिए केवल दुर्लभ अवसर पर पूरे डेटाबेस के पूर्ण पुन:प्रयास की आवश्यकता होगी। इस हैशिंग योजना के विभिन्न उदाहरणों में शब्दों के सेट और विशिष्ट भाषाओं की परिभाषाएं, संगठन के कर्मियों के लिए महत्वपूर्ण डेटा के सेट आदि शामिल हैं।

कार्यान्वयन

स्थिर मामले में, हमें कुल पी प्रविष्टियों के साथ एक सेट प्रदान किया जाता है, प्रत्येक एक अद्वितीय कुंजी से जुड़ा होता है, जो समय से पहले होता है। फ़्रेडमैन, कोमलोस और ज़ेमेरेडी आकार s =2(p-1) बकेट के साथ एक प्रथम-स्तरीय हैश तालिका का चयन करते हैं। निर्माण करने के लिए, शीर्ष-स्तरीय हैशिंग फ़ंक्शन द्वारा p प्रविष्टियों को q बकेट में विभाजित किया जाता है, जहां q =2(p-1)। फिर r प्रविष्टियों वाली प्रत्येक बकेट के लिए, r2 स्लॉट के साथ एक दूसरे स्तर की तालिका आवंटित की जाती है, और इसके हैश फ़ंक्शन को एक सार्वभौमिक हैश फ़ंक्शन सेट से यादृच्छिक रूप से चुना जाता है ताकि यह टकराव-मुक्त हो जाए और हैश तालिका के साथ संग्रहीत हो। यदि बेतरतीब ढंग से चुना गया हैश फ़ंक्शन टकराव के साथ एक तालिका बनाता है, तो एक नया हैश फ़ंक्शन बेतरतीब ढंग से तब तक चुना जाता है जब तक कि टकराव-मुक्त तालिका की गारंटी नहीं दी जा सकती। अंत में, टकराव मुक्त हैश के साथ, r प्रविष्टियां दूसरे स्तर की तालिका में हैश की जाती हैं।


  1. सीएसएस स्थिति:स्थिर;

    स्थिति:स्थिर; संपत्ति एक स्थिर तत्व की स्थिति निर्धारित करती है, जो कि डिफ़ॉल्ट है। उदाहरण ऊपर, नीचे, बाएँ और दाएँ गुण स्थिर स्थित तत्वों को प्रभावित नहीं करते हैं। आप सीएसएस को लागू करने के लिए निम्न कोड चलाने का प्रयास कर सकते हैं स्थिति:स्थिर; संपत्ति <!DOCTYPE html> <html>   &n

  1. डेटा संरचना में असममित हैशिंग

    इस खंड में हम देखेंगे कि असममित हैशिंग तकनीक क्या है। इस तकनीक में, हैश तालिका को d संख्या में ब्लॉकों में विभाजित किया जाता है। प्रत्येक विभाजन की लंबाई n/d है। जांच मान xi, 0 i ≤ d, $$\lbrace\frac{i*n}{d},...,\frac{(i+1)*n}{d-1} से समान रूप से निकाला जाता है \ आरब्रेस$$. बहुविकल्पी हैशिंग की तरह,

  1. डेटा संरचना में डबल हैशिंग

    इस खंड में हम देखेंगे कि ओपन एड्रेसिंग स्कीम में डबल हैशिंग तकनीक क्या है। एक साधारण हैश फ़ंक्शन h´(x) :U → {0, 1, । . ।, एम - 1}। ओपन एड्रेसिंग स्कीम में, वास्तविक हैश फ़ंक्शन h(x) सामान्य हैश फ़ंक्शन h’(x) ले रहा है, जब स्थान खाली नहीं है, तो सम्मिलित करने के लिए कुछ स्थान प्राप्त करने के लिए एक औ