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

डेटा संरचना में चेनिंग के साथ हैशिंग (Hashing with Chaining)


इस अनुभाग में हम देखेंगे कि चेनिंग (Chaining) के साथ हैशिंग क्या है। चेनिंग टकराव समाधान (collision resolution) की एक तकनीक है। हम टकराव से बच नहीं सकते, लेकिन हम टकराव को कम करने की कोशिश कर सकते हैं, और एक ही हैश मान के लिए कई तत्वों को संग्रहीत करने का प्रयास कर सकते हैं।

इस तकनीक में मान लीजिए हमारा हैश फ़ंक्शन h(x) 0 से 6 तक है। इसलिए 7 से अधिक तत्वों के लिए, कुछ तत्व अवश्य होंगे, जिन्हें उसी कमरे में रखा जाएगा। उसके लिए हम एक सूची बनाएंगे ताकि उन्हें तदनुसार संग्रहीत किया जा सके। प्रत्येक बार हम सूची की शुरुआत में जोड़ेंगे ताकि सम्मिलन O(1) समय में हो सके।

बेहतर विचार पाने के लिए निम्नलिखित उदाहरण देखें। यदि हमारे पास {15, 47, 23, 34, 85, 97, 65, 89, 70} जैसे कुछ तत्व हैं। और हमारा हैश फ़ंक्शन h(x) = x mod 7 है।

हैश मान होंगे:

डेटा संरचना में चेनिंग के साथ हैशिंग (Hashing with Chaining)

चेनिंग के साथ हैशिंग इस तरह होगी:

डेटा संरचना में चेनिंग के साथ हैशिंग (Hashing with Chaining)


  1. डेटा संरचना में रैखिक जांच (Linear Probing) डेटा संरचना में रैखिक जांच (Linear Probing)

    इस अनुभाग में हम देखेंगे कि ओपन एड्रेसिंग योजना में रैखिक जांच (Linear Probing) तकनीक क्या है। एक सामान्य हैश फ़ंक्शन h(x) : U → {0, 1, …, m – 1} है। ओपन एड्रेसिंग योजना में, वास्तविक हैश फ़ंक्शन h(x) सामान्य हैश फ़ंक्शन h(x) लेता है और उसके साथ एक और भाग जोड़ता है ताकि एक रैखिक समीकरण बनाया जा सके

  1. डेटा संरचना में R-ट्री (R-trees) डेटा संरचना में R-ट्री (R-trees)

    यहाँ हम R-ट्री (R-Trees) डेटा संरचना देखेंगे। R-ट्री का उपयोग विशेष डेटा इंडेक्स को कुशलतापूर्वक संग्रहीत करने के लिए किया जाता है। यह संरचना विशेष डेटा क्वेरी और भंडारण को रखने के लिए बहुत उपयोगी है। R-ट्री के कुछ वास्तविक जीवन अनुप्रयोग हैं: बहुआयामी जानकारी इंडेक्स करना गेम डेटा संभालना भू-स्था

  1. हाफएज डेटा स्ट्रक्चर (Halfedge Data Structure) हाफएज डेटा स्ट्रक्चर (Halfedge Data Structure)

    परिचय (Introduction) टेम्पलेट पैरामीटर्स के लिए HDS या हाफएज डेटा स्ट्रक्चर (Halfedge Data Structure - संक्षिप्त HalfedgeDS) को एक एज-केंद्रित डेटा स्ट्रक्चर (Edge-centered Data Structure) के रूप में परिभाषित किया जाता है जो वर्टेक्स, एज और फेसेस (Vertices, Edges and Faces) की घटना जानकारी (Incidenc