বিভাজন এবং বিজয়ের একটি সর্বোত্তম প্রয়োগ নিম্নলিখিত সমস্যাটি সমাধান করা:
একটি অ্যারেকে স্বতন্ত্র, তুলনামূলক উপাদানগুলি দিয়ে দেওয়া হয়েছে, অ্যারেতে বিপরীত জোড়ার সংখ্যা গণনা করুন: জোড় ( i , j ) যেমন একটি [ i ] > a [ জে ] এবং i < জে ।
এর একটি পদ্ধতির মধ্যে রয়েছে মার্জ বাছাই করা, তবে সাব-সমস্যায় বিপরীতমুখী জোড়ার সংখ্যাও গণনা করা। সংশ্লেষের পদক্ষেপের সময়, আমরা (দুটি) উপ-সমস্যা জুড়ে বিস্তৃত বিপরীতমুখী সংখ্যার সংখ্যা গণনা করি এবং উপ-সমস্যাগুলির সংখ্যা গণনা করি।
এটি ভাল, এবং একটি সময়কে অ্যালগরিদম দেয়, এই অ্যারেটি মিস করে।
যদি অ্যারেটি কেবল পঠনযোগ্য হয় তবে আমাদের অতিরিক্ত প্রতিবন্ধকতা রয়েছে, তবে আমরা একটি অনুলিপি তৈরি করতে পারি এবং অনুলিপিটি মোকাবেলা করতে পারি, বা একটি অতিরিক্ত তথ্য-কাঠামো একটি অর্ডার পরিসংখ্যানের মতো ভারসাম্য বাইনারি ট্রি ব্যবহার করতে পারি, যা উভয়ই ব্যবহার করে স্থান।
বর্তমান প্রশ্নটি চেষ্টা করা এবং স্থানটি আরও ভাল করা, যখন রান সময়কে প্রভাবিত করে না। অর্থাত
বিপরীতমুখী জোড়ার সংখ্যা গণনা করার জন্য কি কোনও সময় অ্যালগরিদম রয়েছে, যা কেবলমাত্র পঠনযোগ্য অ্যারেতে কাজ করে এবং উপ-লিনিয়ার (যেমন ও ( এন ) ব্যবহার করে ) স্পেস ?
একটি অভিন্ন ব্যয়ের র্যাম মডেল ধরে নিন এবং উপাদানগুলি স্থান নেয় এবং তাদের মধ্যে তুলনা হয় ও ( 1 ) ।
একটি রেফারেন্সটি করবে, তবে একটি ব্যাখ্যা আরও ভাল হবে :-)
আমি ওয়েবে অনুসন্ধান করার চেষ্টা করেছি, তবে এর জন্য কোনও ইতিবাচক / নেতিবাচক উত্তর খুঁজে পাইনি। আমি মনে করি এটি কেবল একটি কৌতুহল।