একটি ভাল বিশেষ কেস বাছাই অ্যালগরিদম কি?


13

আমার কাছে একটি ডেটাসেট রয়েছে যা 2-ডি গ্রিডে সাজানো বেশ কয়েকটি অবজেক্ট। আমি জানি যে আমার কড়া অর্ডার রয়েছে, আপনি প্রতিটি সারির মধ্যে বাম থেকে ডানে যেতে এবং প্রতিটি কলামের মধ্যে উপরে থেকে নীচে হিসাবে বৃদ্ধি পাচ্ছেন। উদাহরণ স্বরূপ,

  • 1 2 3
  • 4 6 7
  • 5 8 9

সম্পূর্ণ ডেটাসেটকে রৈখিকভাবে বাছাই করার জন্য আমি কি নিষ্কলুষ বাছাইয়ের ক্ষেত্রে উন্নতি করতে পারি (তুলনা করে যেমন পরিমাপ করা হয়)?

এনডি ডেটাসেটের জন্য কী? স্বেচ্ছাসেবী সসীম ডেটাসেটের তুলনা একটি উপসেট সঙ্গে পরিচিত?


1
আপনি আরও সঠিক প্রশ্ন জিজ্ঞাসা করতে পারেন? আপনার প্রথম অনুচ্ছেদটি ইতিমধ্যে আপনার ডেটা সাজানো হয়েছে তা বোঝাতে পঠন করা যায়! আপনার ইনপুটটি ঠিক কী এবং আপনি কোন আউটপুট চান?
জ্যাক ক্যারেট

1
হ্যাঁ, ভাষাটি কিছুটা বিভ্রান্তিকর। এটি বুঝতে আমার কিছুটা সময় লেগেছিল যে ডেটা সেটটি সাজানোর জন্য এন সংখ্যা নিয়ে গঠিত তবে এই সংখ্যাগুলি একটি স্কয়ার্ট (এন) এক্স স্ক্র্যাট (এন) গ্রিডে সাজানো হয়েছে যাতে প্রতিটি সারি এবং প্রতিটি কলাম ইতিমধ্যে সাজানো থাকে। আপনি কি বোঝাতে চেয়েছিলেন?

হ্যাঁ, এটাই আমি বোঝাতে চাইছিলাম আমি স্বচ্ছতার জন্য সম্পাদনা করব।
জাচারি ভ্যান্স

উত্তর:


19

এই সমস্যার উপর একটি ( bound (এন 2 লগ এন) কম আবদ্ধ প্রমাণ করা সহজ ( তুলনা বাছাইয়ের মডেলটিতে): যদি অবস্থানের উপাদানটি (i, j) সর্বদা i + j এর 1/2 অংশের মধ্যে থাকে তবে গ্রিড তির্যকগুলি একে অপরের থেকে স্বতন্ত্র এবং প্রতিটি গ্রিডের তির্যকের মধ্যে বাছাই করা ক্রমটি স্বেচ্ছাসেবী। সুতরাং এই সীমাবদ্ধতার অধীনে সম্ভাব্য অর্ডারের মোট সংখ্যাটি হ'ল ত্রিভুজগুলির দৈর্ঘ্যের ফ্যাক্টরিওরগুলির (গ্রিডের সমস্ত ত্রিভুজগুলির উপরে), যা এন 2 লগ এন-এ ক্ষতিকারক।

কোনটি বলা যায় যে স্ট্যান্ডার্ড তুলনা বাছাই অ্যালগরিদমগুলি গ্রিডগুলির জন্য বর্ণিত হিসাবে আপনার বর্ণনা অনুসারে অ্যাসিম্পোটোটিকভাবে অনুকূল।


অন্য উত্তরটি এই জটিলতার সাথে একটি সুস্পষ্ট অ্যালগরিদম দেয়, তাই আমি 2-ডি গ্রিডের জন্য এই সমস্যাটি সমাধান করার বিষয়টি বিবেচনা করব এবং প্রকৃতপক্ষে পরীক্ষা না করেই সম্ভবত নির্বিচারে মাত্রা গ্রিডের জন্য।
জাচারি ভ্যান্স

4

যদি আমি সমস্যাটি সঠিকভাবে বুঝতে পারি (এবং আমি নাও পারি তবে নির্দ্বিধায় আমি বলি না) আপনি একটি 2D গ্রিডকে বাছাই করা 1D অ্যারে রূপান্তর করতে চান, যেখানে প্রতিটি সারি এবং কলামটি ইতিমধ্যে 2D গ্রিডে বাছাই করা আছে?

এই ক্ষেত্রে তালিকার প্রথম উপাদানটি হতে হবে সমস্যার সংজ্ঞা অনুসারে উপরের বাম কোণে ((0,0))। এর পরে এটি হয় (1,0) বা (0,1) উপাদান হতে হবে, কারণ সংজ্ঞা অনুসারে অন্যরা এর চেয়ে আরও বড় হবে।

আপনি এই বলে সাধারণীকরণ করতে পারেন যে গ্রিডের পরবর্তী ক্ষুদ্রতম উপাদানটি সর্বদা ইতিমধ্যে ব্যবহৃত উপাদানগুলির (বা গ্রিডের প্রান্ত) এর নীচে সরাসরি থাকে এবং ইতিমধ্যে ব্যবহৃত উপাদানটির (অথবা গ্রিডের প্রান্ত) ডানদিকেও থাকে, কারণ উভয়ই এটির চেয়ে ছোট হতে সংজ্ঞায়িত। সুতরাং প্রতিটি পুনরাবৃত্তিতে আপনাকে কেবলমাত্র সর্বনিম্ন মান বিবেচনা করতে হবে যা এই প্রয়োজনীয়তা পূরণ করে।

আপনি সম্ভাব্য প্রার্থীদের খুঁজে পাওয়ার সাথে সাথে তাদের বাছাই করা ক্রমে রাখতে পারেন (একটি পুনরাবৃত্তিতে দু'জনের বেশি আর কখনও উপলভ্য হবে না) এবং প্রতিটি পুনরাবৃত্তিতে উপলব্ধ নতুন মানগুলি (যদি থাকে) পরীক্ষা করে দেখুন। যদি তারা পূর্ববর্তী প্রার্থীদের মধ্যে সর্বনিম্নের চেয়ে কম হয় তবে সরাসরি তাদের তালিকায় যুক্ত করুন এবং পুনরাবৃত্তি করুন, অন্যথায় সর্বনিম্ন আগের প্রার্থী যুক্ত করুন এবং পরবর্তী সর্বনিম্নের সাথে তুলনা করুন ইত্যাদি etc.

দুর্ভাগ্যক্রমে আমি এর সঠিক জটিলতা সরবরাহ করতে সক্ষম হবার দাবি করি না, এবং আমি দাবিও করি না যে এটি সবচেয়ে সম্ভব সম্ভব, এটি একটি নির্বোধ পদ্ধতির চেয়ে অবশ্যই ভাল বলে মনে হচ্ছে, এবং আমি আশা করি যে এটি বোঝার জন্য আমি এটি যথেষ্টভাবে ব্যাখ্যা করেছি।

সম্পাদনা: এই জাতীয় এনডি গ্রিডের জন্য আমি বিশ্বাস করি যে একই মৌলিক নীতিটি প্রযোজ্য, তবে প্রতিটি পুনরাবৃত্তি এন-এক্স নতুন প্রার্থীদের উপলব্ধ করে, এবং এই প্রার্থীদের অবশ্যই এই মুহুর্তে প্রতিটি এন মাত্রার মধ্যে সবচেয়ে ছোট অব্যবহৃত উপাদান হতে হবে।


সংক্ষেপে, আপনি স্কয়ারটি (এন) -ওয়ে একত্রীকরণ করতে পারেন, মার্জ্টের মতো? এটি ছিল আমার চলমান সেরা পদ্ধতি, তবে এটি ও (এন লগ এন) হিসাবে প্রমাণিত হয়েছে - আমার সেখানে কোনও সঠিক ধ্রুবক নেই, তবে লগ (স্কয়ার্ট (এন)) এর জন্য কমপক্ষে 0.5 আছে।
জাচারি ভ্যান্স
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.