একটি স্ট্রিং হোমোজাইনেজিংয়ের জটিলতা


10

অনুপ্রেরণা : ডেটা ভার্শনিংয়ের সরঞ্জামগুলি বিকাশ করার সময়, আমরা দুটি সংখ্যক পূর্ণসংখ্যার "ডিফ" তৈরির জন্য অ্যালগরিদমগুলি সন্ধান করি, যেখানে রূপান্তরগুলির ক্রম ঘটে যা একটি সংখ্যার পূর্ণাঙ্গ সেট করে নেয় set আমরা সেই সমস্যাটি নীচের খুব স্বাভাবিক সমস্যাটিতে কমাতে সক্ষম হয়েছি যা মনে হয় দূরত্ব সম্পাদনা করার জন্য সংযোগ রয়েছে, অদলবদল করে গ্রুপিং করা , এবং সর্বনিম্ন সাধারণ স্ট্রিং পার্টিশন

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

অনুমোদিত একমাত্র অপারেশন হ'ল একই রকম অক্ষরের একটি অনুচ্ছেদে বাছাই করা এবং সেই অনুচ্ছেদটি যে কোনও জায়গায় সরিয়ে নেওয়া, এবং এতে আমার 1 ইউনিট ব্যয় হয়।

এই সমস্যার জটিলতার বৈশিষ্ট্যযুক্ত কোনও সহায়তা অনেক প্রশংসা হবে!

উদাহরণ :

  • aabcdab: ইনপুট
  • BCD এএ AB: প্রথম চলন্ত পর এএ পরে "D" অবস্থান থেকে
  • বি বিসিডিএএ: ট্রিলিং বি কে প্রথম অবস্থানে নিয়ে যাওয়ার পরে

যেহেতু ফলাফলটি স্ট্রিংটি একজাতীয়, তাই আমাদের ব্যয় 2 হয়।

নোট করুন যে আমরা আউটপুট সম্পর্কিত কোনওভাবেই বাধা নেই: যতক্ষণ না এটি একজাতীয় হয় ততক্ষণ আমাদের কোনও নির্দিষ্ট ক্রম নিশ্চিত করার প্রয়োজন হয় না।

উত্তর:


6

ন্যূনতম হিটিং সেট থেকে হ্রাস করে এই সমস্যাটি এনপি-সম্পূর্ণ ।

USsS,sUHUsS,hHhs

হ্রাস নিম্নরূপ:

  • uUussSusu

  • s|s|1suusu

  • ususssSssu

  • |s|+|H|H

যেহেতু ন্যূনতম হিটিং সেটটি এনপি-হার্ড, অনুকূলভাবে স্ট্রিংকে একত্রিত করার পাশাপাশি। যেহেতু পদক্ষেপগুলি সাক্ষী গঠন করে, এটি এনপি-সম্পূর্ণ।


এটি একটি মার্জিত হ্রাস - আপনাকে ধন্যবাদ!
আদিত্য পরমেশ্বরন

2

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

সুতরাং কে পরিবর্তনগুলির সাথে একটি স্ট্রিংয়ের জন্য আপনার সর্বাধিক কে - এল + 1 চালানো দরকার যেখানে l স্ট্রিংয়ের বিভিন্ন বর্ণের সংখ্যা, কারণ শেষের দিকে l - 1 পরিবর্তন থাকবে। দৈর্ঘ্য n এর একটি স্ট্রিংয়ে সর্বাধিক n-1 বর্ণ পরিবর্তন হতে পারে, এটির জন্য বেশিরভাগ n - l পদক্ষেপের প্রয়োজন হতে পারে । কমপক্ষে সম্ভাব্য সংখ্যা এটির অর্ধেক।

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

সবচেয়ে খারাপ ক্ষেত্রে একটি স্ট্রিং যেখানে প্রতিটি অক্ষর তার পূর্বসূরীর চেয়ে আলাদা (এবং আপনি কোনও অ্যাব্বা বোনাস পান না)। এখানে আপনার স্ট্রিংয়ের দৈর্ঘ্যের মধ্যে বেশ কয়েকটি অপারেশন রৈখিক প্রয়োজন এবং এই দৈর্ঘ্যের প্রায় সমান।

আপনার উদাহরণে, আপনার কাছে 5 -> 4 -> 3 টি পরিবর্তন রয়েছে এবং 3 টি সংখ্যার সমান (4) বিয়োগ 1 এর সমান।

পার্শ্ব দ্রষ্টব্য: মাত্র দুটি আকারের বর্ণমালার জন্য, স্ট্রিংয়ের উপসর্গ বা প্রত্যয়কে সরানো না এমন প্রতিটি পদক্ষেপ দুটি দ্বারা সংশ্লেষকে হ্রাস করে এবং এইভাবে যুক্তিসঙ্গত পদক্ষেপের প্রতিটি ক্রমই অনুকূল হয়।


আপনি দাবী করেন যে একটি পদক্ষেপটি সর্বোচ্চ 2 দ্বারা পরিবর্তনের সংখ্যা হ্রাস করতে পারে, তবে আসলে এটি পরিবর্তনগুলির সংখ্যা 3 টি হ্রাস করতে পারে উদাহরণস্বরূপ, "অ্যাকব্যাক" কে "আবাববিসিসি" তে রূপান্তরিত করে প্রথম স্তরটিকে "বিসি" তে স্থানান্তরিত করে দ্বিতীয় বিস্তৃত "বিসি" এর মাঝামাঝি স্ট্রিংয়ের পরিবর্তনের সংখ্যা 5 থেকে 2 এর হ্রাস ঘটায়
মিখাইল রুডয়

হাই, @ মিখাইলরোডয় প্রশ্নগুলিতে বলা হয়েছে যে অপারেশনটি "একই রকমের অক্ষরের একটি অনুচ্ছেদ বেছে নিয়েছে", সুতরাং বিসি যতদূর বুঝতে পারছি না।
পিটার লিওপল্ড

আমি সেই বিবরণটি পুরোপুরি মিস করেছি। সেক্ষেত্রে আপনি সঠিক।
মিখাইল রুডয়

পিটার সঠিক: এই পদক্ষেপগুলির অনুমতি নেই।
আদিত্য পরমেশ্বরন

উত্তর: বাকী উত্তর - প্রকৃতপক্ষে, এই পর্যবেক্ষণগুলি পুনরায়: নিম্ন-সীমা, বর্ণমালার আকার 2 কেটের সর্বোত্তমতা এবং যে কোনও মুহুর্তে কী করা উচিত তার জন্য হিউরিস্টিক্স মূল্যবান। যেহেতু সবচেয়ে খারাপ ক্ষেত্রে যে কোনও পদক্ষেপ কেবল অক্ষরের সেই ক্রমকেই উপকৃত করে এবং সর্বোত্তম ক্ষেত্রে আপনার অ্যাব্বার মতো অক্ষরের সর্বোচ্চ দুটি সিকোয়েন্সগুলিতে একত্রিত হয়, তাই একটি 2-আনুমানিক প্রাকৃতিক বলে মনে হয়।
আদিত্য পরমেশ্বরান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.