নিম্নলিখিত সমস্যা বিবেচনা করুন:
ইনপুট : সংখ্যার তালিকাভুক্ত করে
লক্ষ্য : উভয় তালিকায় একটি পূর্ণসংখ্যা রয়েছে কিনা তা নির্ধারণ করুন ।
ধরুন উভয় তালিকাগুলি আকারের । এই সমস্যাটির জন্য কোনও ডিস্ট্রিমেন্টিক, লিনিয়ার-টাইম অ্যালগরিদম কি আছে? অন্য কথায়, এলোমেলোভাবে ব্যবহার না করেই আপনি সময়ে নির্বিচারে এই সমস্যার সমাধান করতে পারেন ?
দুর্ভাগ্যক্রমে, আপনি ধরে নিতে পারবেন না যে তালিকা উপাদানগুলি সমস্ত ছোট are
আমি এটিকে র্যান্ডমাইজড অ্যালগরিদম ব্যবহার করে প্রত্যাশিত সময়ে কীভাবে সমাধান করবেন তা দেখতে পাচ্ছি : এলোমেলোভাবে একটি 2-ইউনিভার্সাল হ্যাশ ফাংশন , এর উপাদানগুলিকে একটি হ্যাশটেবলে সংরক্ষণ করুন ( হ্যাশ ফাংশন হিসাবে ব্যবহার করে) এবং তারপরে সন্ধান করুন প্রতিটি উপাদান এটি হ্যাশটেবলে রয়েছে কিনা তা দেখতে। প্রত্যাশিত চলমান সময়টি । যাইহোক, চলমান সময়ের সাথে কীভাবে একটি ডিস্ট্রিমেন্টিক অ্যালগরিদম খুঁজে পাবেন তা আমি দেখতে পাই না । আপনি যদি এটিকে ড্যারানডমাইজ করার চেষ্টা করেন এবং একটি নির্দিষ্ট নির্দিষ্ট হ্যাশ ফাংশনটি ঠিক করেন, তবে এমন একটি খারাপ অবস্থার ইনপুট উপস্থিত থাকবে যা এই পদ্ধতিটি ta থেটাতে চালিত করেসময়। আমি খুঁজে পেতে পারি সেরা নির্দোষী অ্যালগরিদম মান মান বাছাই জড়িত, কিন্তু যে লিনিয়ার সময় হবে না। আমরা কি লিনিয়ার চলমান সময় অর্জন করতে পারি?
এছাড়াও, আমি দেখতে চাই যে লিনিয়ার সময়ে এটি কীভাবে সমাধান করা যায় যদি আপনি ধরে নেন যে তালিকার সমস্ত উপাদানই পরিসীমাতে পূর্ণসংখ্যা (মূলত, গণনা অনুসারে কাজ করুন) - তবে আমি সাধারণভাবে যা ঘটে তাতে আগ্রহী কেস যখন আমরা ধরে নিতে পারি না।
যদি উত্তরটি গণনার মডেলটির উপর নির্ভর করে, র্যাম মডেলটি মনে পড়বে তবে আমি গণনার কোনও যুক্তিসঙ্গত মডেলের ফলাফলগুলিতে আগ্রহী হব। আমি উপাদান স্বতন্ত্রতার জন্য সিদ্ধান্ত গাছের অ্যালগরিদমের নিম্ন সীমানা সম্পর্কে অবগত রয়েছি , তবে এটি চূড়ান্ত নয়, কারণ মাঝে মাঝে সত্ত্বেও আমরা লিনিয়ার-টাইম অ্যালগরিদমগুলি দেখতে পারি সিদ্ধান্ত-গাছের মডেলটিতে আবদ্ধ।