একটি অ-ট্রান্সজিটিভ তুলনা সহ বাছাই করা অ্যালগরিদম ব্যবহার করা কি সম্ভব এবং যদি হ্যাঁ, তবে তুলনামূলককে বাছাইয়ের জন্য প্রয়োজনীয়তা হিসাবে কেন স্থানান্তরকে তালিকাভুক্ত করা হয়?
পটভূমি:
একটি বাছাই করা অ্যালগরিদম সাধারণত একটি তুলনামূলক ফাংশন সি (x, y) অনুযায়ী তালিকার উপাদানগুলিকে সাজায়
এই তুলনাকারীর প্রয়োজনীয়তা হ'ল আমি যতদূর তাদের বুঝতে পারি:
- প্রতিচ্ছবি:
- অ্যান্টিসিমমেট্রিক:
- ট্রানজিটিভ:
- সি (x, y) সমস্ত x এবং y এর জন্য সংজ্ঞায়িত করা হয় এবং ফলাফলগুলি কেবল x এবং y এর উপর নির্ভর করে
(এই প্রয়োজনীয়তাগুলি সর্বদা পৃথক পৃথক বাস্তবায়নকে পৃথকভাবে তালিকাভুক্ত করা হয়, তাই আমি নিশ্চিত না যে আমি সেগুলি ঠিকঠাক পেয়েছি)
এখন আমি এমন একটি "সহনশীল" তুলনামূলক ফাংশন সম্পর্কে ভাবছি, যেটি x, y সংখ্যাটিকে অনুরূপ হিসাবে গ্রহণ করে যদি :
উদাহরণস্বরূপ: উভয় [ 1, 2, 3, 4, 5]
এবং [1, 4, 3, 2, 5]
সহনশীল তুলনামূলক ( অনুসারে আরোহণের ক্রমে সঠিকভাবে সাজানো হয়েছে যদি x তালিকায় y এর আগে আসে)
তবে তা সি নয় (4,2) = 1[1, 4, 2, 3, 5]
এই সহনশীল তুলনামূলকটি প্রতিচ্ছবি এবং অ্যান্টিসিমমেট্রিক তবে ট্রানসিটিভ নয়।
উদাহরণস্বরূপ সি (1,2) = 0, সি (2,3) = 0, তবে সি (1,3) = -1, ট্রানজিটিভিটি লঙ্ঘন করছে
তবুও আমি এই ধরণের তুলনাকারী এবং একটি এলোমেলো তালিকার দেওয়া হলে "সঠিকভাবে সাজানো" আউটপুট উত্পাদন করতে ব্যর্থ হবে এমন কোনও বাছাই করা অ্যালগরিদম সম্পর্কে ভাবতে পারি না।
এই ক্ষেত্রে ট্রানজিটিভিটি কি প্রয়োজনীয় নয়? আর যে transitivity একটি কম কঠোর সংস্করণ হয় কাজ সাজানোর জন্য প্রয়োজনীয়?
সম্পর্কিত প্রশ্নাবলী:
- তুলনা বাছাইয়ের জন্য এন্টিসিমমেট্রি কেন প্রয়োজনীয়? (অ্যান্টিসিমমেট্রি সম্পর্কে)
- বাছাই করা অ্যালগরিদমগুলি যা এলোমেলো তুলনাকারী গ্রহণ করে (প্রায় একটি এলোমেলো সি (x, y))
- অ-ট্রান্সজিটিভ আইকোপ্যামার দিয়ে অর্ডারবাই (আমার দ্বারা সি # সাজানোর অ্যালগরিদম সম্পর্কে)