কম্পিউটার টিউটোরিয়াল

ডেটা স্ট্রাকচরে ব্রেন্টস মেথড


এই বিভাগে আমরা ওপেন অ্যাড্রেসড হ্যাশিং সম্পর্কিত ব্রেন্টস মেথড দেখব। এটি একটি হিউরিস্টিক। এটি হ্যাশ টেবিলে সফল সার্চের গড় সময় কমিয়ে আনার চেষ্টা করে।

এই মেথড 본래 ডাবল হ্যাশিং কৌশলে প্রয়োগ করা হতো, কিন্তু এটি যেকোনো ওপেন অ্যাড্রেসিং কৌশলে যেমন লিনিয়ার ও কোড্রেটিক প্রোবিং-এ ব্যবহার করা যায়। একটি উপাদান x-এর 'age', যা একটি ওপেন অ্যাড্রেসিং হ্যাশ টেবিলে সংরক্ষিত, হল ন্যূনতম মান i, যাতে x, A[xi]-এ রাখা হয়।

ব্রেন্টস মেথড সকল উপাদানের মোট age কমিয়ে আনার চেষ্টা করে। যদি আমরা একটি উপাদান x ইন্সার্ট করি, তবে এটি কিছু ধাপ অনুসরণ করে − আমরা i-এর ন্যূনতম মান খুঁজে বের করি যাতে A[xi] খালি থাকে, এটি হল স্ট্যান্ডার্ড ওপেন-অ্যাড্রেসিং-এ x ইন্সার্ট করার জায়গা। এখন একটি উপাদান y বিবেচনা করুন যা A[xi-2]-এ সংরক্ষিত। এই উপাদানটি সেখানে থাকে কারণ yj = xi-2, কিছু j ≥ 0-এর জন্য। আমরা চেক করি অ্যারে লোকেশন A[yj+1] খালি কিনা, যদি খালি থাকে, তবে y কে A[yj+1]-এ সরিয়ে দিই, এবং x কে A[xi-2]-এ সংরক্ষণ করি।

সাধারণ ওপেন অ্যাড্রেসিং-এর তুলনায় এটি মোট age ১ কমানো। সাধারণত ব্রেন্টস মেথড প্রতিটি 2 ≤ k ≤ i এর জন্য, অ্যারে এন্ট্রি A[xi-k] চেক করে, দেখে সেখানে সংরক্ষিত উপাদান y কি A[yj+1], A[yj+2], …, A[yj+k-1]-এ যেকোনো একটি স্থানান্তরিত করা যায় x-এর জন্য জায়গা তৈরির জন্য।


  1. ডেটা স্ট্রাকচরে ইন্টারভাল ট্রি

  2. ডেটা স্ট্রাকচরে B+ ট্রি কুয়েরি

  3. ডেটা স্ট্রাকচরে B+ ট্রি

  4. হাফ-এজ ডেটা স্ট্রাকচার