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

ब्लूम फ़िल्टर

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

एक विशिष्ट डेटा संरचना जिसका नाम संभाव्य डेटा संरचना . है ब्लूम फिल्टर के रूप में लागू किया गया है। यह डेटा संरचना हमें यह पहचानने में मदद करती है कि कोई तत्व किसी सेट में मौजूद है या अनुपस्थित है।

बिट वेक्टर को आधार डेटा संरचना के रूप में कार्यान्वित किया जाता है। यहाँ एक छोटा सा है जिसका उपयोग हम समझाने के लिए करेंगे

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

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

ब्लूम फ़िल्टर के विस्तृत कार्यान्वयन पर निम्नलिखित में चर्चा की गई है

ब्लूम फ़िल्टर दो क्रियाओं का समर्थन करते हैं, पहले ऑब्जेक्ट को जोड़ना और किसी ऑब्जेक्ट का ट्रैक रखना और फिर यह सत्यापित करना कि कोई ऑब्जेक्ट पहले देखा गया है या नहीं।

ब्लूम फ़िल्टर में ऑब्जेक्ट जोड़ना

  • हम जोड़ने के लिए वस्तु के लिए हैश मानों की गणना करते हैं;
  • हम इन हैश-मानों को ब्लूम फ़िल्टर स्थिति में कुछ बिट्स सेट करने के लिए लागू करते हैं (हैश मान सेट करने के लिए बिट की स्थिति है)।

सत्यापित करना कि क्या ब्लूम फ़िल्टर में कोई ऑब्जेक्ट है -

  • हम जोड़ने के लिए वस्तु के लिए हैश मानों की गणना करते हैं;
  • अगला हम सत्यापित करते हैं कि इन हैश मानों द्वारा अनुक्रमित बिट्स ब्लूम फ़िल्टर स्थिति में सेट हैं या नहीं।

हमें यह ध्यान रखना होगा कि किसी वस्तु का हैश मान सीधे ब्लूम फ़िल्टर स्थिति में नहीं जोड़ा जाता है; प्रत्येक हैश फ़ंक्शन बस यह निर्धारित करता है कि कौन सा बिट सेट करना है या सत्यापित करना है। उदाहरण के लिए:यदि केवल एक हैश फ़ंक्शन का उपयोग किया जाता है, तो केवल एक बिट सत्यापित या चेक किया जाता है।


  1. पायथन में फ़िल्टर () क्या है?

    फ़िल्टर विधि के माध्यम से, हम एक अलग फ़ंक्शन में परिभाषित फ़िल्टर स्थिति का उपयोग करके सूची के विशिष्ट तत्वों को फ़िल्टर करते हैं। इसलिए हम पहले एक उपयोगकर्ता-परिभाषित फ़ंक्शन बनाते हैं जो फ़िल्टरिंग के मानदंडों का उल्लेख करेगा। हमें परिणाम देने के लिए इस फ़ंक्शन और आपूर्ति की गई सूची को फ़िल्टर फ़ं

  1. पायथन में फ़िल्टर करें

    हम कभी-कभी ऐसी स्थिति में पहुंच जाते हैं जहां हमारे पास दो सूचियां होती हैं और हम यह जांचना चाहते हैं कि छोटी सूची का प्रत्येक आइटम बड़ी सूची में मौजूद है या नहीं। ऐसी स्थिति में हम नीचे बताए अनुसार फ़िल्टर () फ़ंक्शन का उपयोग करते हैं। सिंटैक्स Filter(function_name, sequence name) यहां Function_na

  1. विंडोज 10 में स्मार्टस्क्रीन फ़िल्टर अक्षम करें

    स्मार्टस्क्रीन माइक्रोसॉफ्ट द्वारा शुरू में इंटरनेट एक्सप्लोरर के लिए बनाई गई एक सुरक्षा सुविधा है, लेकिन विंडोज 8.1 के बाद से इसे डेस्कटॉप स्तर पर भी पेश किया गया था। स्मार्टस्क्रीन का मुख्य कार्य इंटरनेट से अपरिचित ऐप्स के लिए विंडोज़ स्कैन करना है जो सिस्टम को नुकसान पहुंचा सकता है और उपयोगकर्ता