আমার কাছে অগ্রাধিকার সহ কিছু বস্তু রয়েছে যা যৌগিক ধরণের এবং কেবলমাত্র আংশিক অর্ডারযুক্ত । আমার এই অগ্রাধিকারের ক্রম অনুসারে অবজেক্টগুলি নির্বাচন করতে হবে (অর্থাত্ প্রতিবার ন্যূনতম আইটেমটি উত্পাদন করুন)। তবে ইচ্ছামতভাবে অর্ডারটি সম্পন্ন করার পরিবর্তে, আমি এই পছন্দটি পছন্দ করব যদি সারিটি এমন এক অর্থে স্থিতিশীল হয় যে যদি একাধিক ন্যূনতম উপাদান থাকে তবে এটি প্রথমে প্রাচীনতমটি ফিরিয়ে দেওয়া উচিত।
আংশিক ক্রম নিয়ে কাজ করবে এমন কোনও হিপ ডেটা কাঠামো আছে কি? বা এটির সাথে কাজ করার জন্য নিয়মিত অগ্রাধিকার সারির একটি পরিবর্তন? আমার প্রয়োজন অ্যালগরিদমের জন্য সাধারণ পছন্দ হ'ল সহজ বাইনারি বা 4-অ্যারি হিপ, তবে এটি আংশিক ক্রম দিয়ে কাজ করে না।
অগ্রাধিকার সমর্থন করে:
- আংশিক ক্রম অপারেশন ব্যবহার । এটা আংশিক ক্রম তাই এটা সম্ভব যে মিথ্যা এবং এছাড়াও মিথ্যা। আমি লিখি যে ক্ষেত্রে।
- y y ≼ x i n O ( n )
- আংশিক অর্ডার করার জন্য একটি রৈখিক বর্ধন সংজ্ঞায়িত করা যেতে পারে। অগ্রাধিকার সারির জন্য এটি ব্যবহার করা সহজ উপায় যেমন অ্যালগরিদম সেভাবে কাজ করে। তবে আদেশটি কার্য সম্পাদনকে প্রভাবিত করে এবং সন্নিবেশয়ের ক্রমটি দেখে মনে হচ্ছে এটি সবচেয়ে খারাপ পরিস্থিতি এড়ানো সবচেয়ে ভাল be
অতিরিক্তভাবে আমি যে অ্যালগরিদমটি এটি ব্যবহার করতে চাই সেগুলি সারিতে থাকা সমস্ত অগ্রাধিকারের সর্বাধিক জানতে হবে।
অগ্রাধিকারগুলির কিছু বাস্তব-জগতের অর্থ রয়েছে তবে এটি পরিবর্তনের সাপেক্ষে, তাই তাদের থাকতে পারে এমন অন্যান্য সম্পত্তিগুলির উপর নির্ভর করা কার্যকর হবে বলে মনে হয় না।
দ্রষ্টব্য: বাইনারি হ্যাপগুলি আংশিক ক্রম দিয়ে কাজ করে না। , এবং দিয়ে বাইনারি হিপ ধরে নিন , যেখানে একটি \ preccurlyeq c এবং a \ not \ lesseqgtr b এবং a \ not \ lesseqgtr c । তারা সেই ক্রমে অবস্থিত, তাইখ গ একটি ≼ গ একটি ⋚ ̸ খ একটি ⋚ ̸ গ
a (0)
/ \
b (1) c (2)
এখন ডি isোকানো হয়। পরবর্তী বিনামূল্যে অবস্থান 3, খ এর বাম সন্তান , তাই আমরা পাই child
a (0)
/ \
b (1) c (2)
/
d (3)
যদি (যা বোঝায় তবে এবং সম্পর্কে কিছু না বলে ) এবং , তবে সাথে অদলবদল করে না , কারণ এটি কম নয়। কিন্তু এটি আসলে কম , কিন্তু তা সঙ্গে তুলনা না, তাই এখন প্রধান গাদা পরিবর্তিত না রাখা; শীর্ষটি ন্যূনতম নয়।ঘ ≼ গ ঘ খ ঘ ⋚ ̸ খ ঘ খ একটি
আমি সন্দেহ করি যে দ্বি-স্তরের স্তূপে কিছুটা স্তরের স্তূপ কাজ করতে পারে work মূলত সর্বদা মূলের সাথে নতুন মানগুলির তুলনা করা এবং তুলনীয় উপাদানগুলির সাথে কেবল লিঙ্ক করা গুরুত্বপূর্ণ important এটি বনের গাছগুলিকে এলোমেলো আকারের করে তুলবে এবং এইভাবে গর্তের মধ্যে পারস্পরিক অতুলনীয় সেটগুলির সংখ্যার উপর জটিলতা নির্ভর করবে। আমি কিছুটা সন্দেহ করি যে জটিলতা ঠিক করা যায় না (আমরা তুলনামূলক উপাদানটিকে আঘাত না করা পর্যন্ত আমাদের তুলনা চালিয়ে যেতে হবে) আমি কিছু মিস করেছি, তাই আমি এই উন্মুক্ত রেখে যাচ্ছি।
দ্রষ্টব্য: অর্ডারিং আংশিক এবং এর জন্য লিনিয়ার এক্সটেনশানগুলি সংজ্ঞায়িত করার উপায় রয়েছে, টাইমস্ট্যাম্প যুক্ত করা এবং এটি মাধ্যমিক মানদণ্ড হিসাবে ব্যবহার করা এর মধ্যে একটি নয় । ধরা যাক আমরা প্রতিটি জন্য টাইমস্ট্যাম্প বরাদ্দ করেছি এবং ক্রম কে iff বা ( এবং হিসাবে সংজ্ঞায়িত করেছি । তারপর ধরুন আমরা স্বতন্ত্র আছে , , , যেমন যে এবং । তারপর এবং , তবে , সুতরাং সম্পর্কটি ক্ষণস্থায়ী নয় এবং অতএব কোনও অর্ডার নয়। এই ধরণের প্রসার কেবল দুর্বল অর্ডারগুলির জন্য কাজ করে, তবে আংশিক নয়।
সম্পাদনা: আমি বুঝতে পেরেছি যে সংজ্ঞায়িত যে কোনও সেটই সর্বাধিক নয়, তবে বর্তমানে কাতারে কার্যকরভাবে দক্ষতার সাথে সর্বাধিক উপাদান পেতে আমার সক্ষম হওয়া দরকার। সুতরাং আমি এখন বিবেচনা করছি যে কিছু সাধারণ গাদা কাঠামোতে সাবট্রিজের ইনফিমাযুক্ত বিশেষ নোড যুক্ত করা সাহায্য করবে কিনা।