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

डेटा संरचना में ओपन एड्रेसिंग के साथ हैशिंग


इस खंड में हम देखेंगे कि ओपन एड्रेसिंग द्वारा हैशिंग क्या है। ओपन एड्रेसिंग टकराव समाधान के लिए एक और तकनीक है। चेनिंग के विपरीत, यह कुछ अन्य डेटा-संरचनाओं में तत्वों को सम्मिलित नहीं करता है। यह डेटा को हैश तालिका में ही सम्मिलित करता है। हैश तालिका का आकार कुंजियों की संख्या से बड़ा होना चाहिए।

ओपन एड्रेसिंग तकनीकों के लिए तीन अलग-अलग लोकप्रिय तरीके हैं। ये तरीके हैं -

  • रैखिक जांच

  • द्विघात जांच

  • डबल हैशिंग

इस तकनीक में, हम अन्य हैश तकनीकों की तरह हैश फ़ंक्शन का उपयोग करते हैं। अगर जगह फ्री है तो उस लोकेशन में एलीमेंट डालें। अब यदि वह स्थान मुक्त नहीं है, तो हम कुछ समीकरणों का उपयोग करके एक और मुक्त तत्व पाएंगे। रैखिक जांच के लिए, हम कुछ रैखिक समीकरणों का उपयोग करेंगे, द्विघात जांच के लिए, हम कुछ द्विघात समीकरणों का उपयोग करेंगे।

डबल हैशिंग में, जब कोई टक्कर होती है, तो हम दूसरे हैश फ़ंक्शन का उपयोग करेंगे, फिर उस स्थान पर डाल देंगे। उस हैश फंक्शन को सेकेंडरी हैश फंक्शन कहते हैं। यदि कोई टक्कर नहीं है, तो इसका सीधे उपयोग नहीं किया जाएगा।


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

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

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

    इस खंड में हम देखेंगे कि चेनिंग के साथ हैशिंग क्या है। चेनिंग एक टकराव समाधान तकनीक है। हम टकराव से बच नहीं सकते, लेकिन हम टकराव को कम करने की कोशिश कर सकते हैं, और एक ही हैश मान के लिए कई तत्वों को संग्रहीत करने का प्रयास कर सकते हैं। यह तकनीक मानती है कि हमारा हैश फंक्शन h(x) 0 से 6 तक है। तो 7 स

  1. हाफेज डेटा संरचना हाफेज डेटा संरचना

    परिचय टेम्पलेट पैरामीटर या हाफएज डेटा संरचना (हाफएजडीएस के रूप में संक्षिप्त) के लिए एक एचडीएस को किनारे-केंद्रित डेटा संरचना के रूप में परिभाषित किया गया है, जो शिखर, किनारों और चेहरों की घटनाओं की जानकारी को बनाए रखने में सक्षम है, जैसे कि प्लानर मैप्स, पॉलीहेड्रा, या अन्य उन्मुख, द्वि-आयामी यादृ