দীর্ঘতম ফিবোনাচি সাবস্ট্রিং সন্ধানের জন্য একটি নিষ্পাপ অ্যালগরিদমের জটিলতা


10

দুটি চিহ্ন দেওয়া এবং , আসুন নীচে থাই ফিবোনাচি স্ট্রিংটি সংজ্ঞায়িত করুন :একটি

এফ()={যদি =0একটিযদি =1এফ(-1)এফ(-2)আর

সঙ্গে স্ট্রিং সংযুক্তকরণের বাচক।

এইভাবে আমাদের থাকবে:

  • এফ(0)=
  • এফ(1)=একটি
  • এফ(2)=এফ(1)এফ(0)=AB
  • এফ(3)=এফ(2)এফ(1)=Aba
  • এফ(4)=এফ(3)এফ(2)=abaab
  • ...

একটি স্ট্রিং প্রদত্ত দ্বারা গঠিত প্রতীক, আমরা একটি ফিবানচি কোন হিসাবে সাবস্ট্রিং সংজ্ঞায়িত সাবস্ট্রিং এর যা একটি উপযুক্ত পছন্দ জন্য একটি ফিবানচি স্ট্রিং এবং \ টেক্সট {খ}এনএসএনএসএকটি

সমস্যাটি

এস দেওয়া এস, আমরা এর দীর্ঘতম ফিবোনাচি সাবস্ট্রিং সন্ধান করতে চাই।

একটি তুচ্ছ আলগোরিদিম

প্রতিটি পদের জন্য স্ট্রিং এর , আমি অনুমান যে সেখানে শুরু হয় (এটা যে চেক করতে যথেষ্ট -th এবং -th প্রতীক স্বতন্ত্র)। যদি এটি হয় তবে এটি , তারপরে এবং আরও কিছুতে বাড়ানো যায় কিনা তা পরীক্ষা করে দেখুন। এর পরে, অবস্থান থেকে আবার শুরু করুন । আপনি পজিশনে না পৌঁছা পর্যন্ত পুনরাবৃত্তি করুন ।S F ( 2 ) i ( i + 1 ) F ( 3 ) F ( 4 ) i + 1 nআমিএসএফ(2)আমি(আমি+ +1)এফ(3)এফ(4)আমি+ +1এন

আমাদের প্রতিটি প্রতীককে কমপক্ষে একবার দেখতে হবে, সুতরাং এটি । জড়িত লুপগুলির জন্য কেবল দুটি রয়েছে, সুতরাং আমরা আরও বলতে পারি যে এটি ।( এন 2 )Ω(এন)হে(এন2)

তবে (কিছুটা আশ্চর্যজনকভাবে) এই নিখুঁত অ্যালগরিদম স্বাভাবিক চতুর্ভুজীয় অ্যালগরিদমের তুলনায় অনেক ভাল সম্পাদন করে (যদি এটি পজিশনে অনেক কাজ করে তবে এটি পরবর্তী পদগুলিতে প্রচুর কাজ করবে না)।আমি

এই অ্যালগরিদমের কার্যকর করার সময়টির জন্য আরও শক্ততর সীমাগুলি খুঁজতে আমি কীভাবে ফিবোনাচি বৈশিষ্ট্যগুলি ব্যবহার করতে পারি?

উত্তর:


5

বলুন যে কোনও অবস্থানে ঘটে যদি সেই অবস্থানের সাথে শুরু হওয়া স্ট্রিংগুলি বা এর পরিপূরকগুলির সাথে সামঞ্জস্য হয় । সংঘটন কতটা কাছাকাছি হতে পারে? উদাহরণস্বরূপ হিসাবে নিন । যদি পজিশন তে ঘটে থাকে তবে এটি বা পজিশনে ঘটতে পারে না , তবে এটি পজিশনে উপস্থিত হতে পারে । আমরা দিন সবচেয়ে ছোট সংখ্যা যেমন যে দুটি ঘটনার হতে এর দুরত্ব ঘটতে পারে । আপনি আনয়ন দ্বারা প্রমাণ করতে পারেন যে আমাদের কাছে আছেF ( n ) F ( n ) F ( 4 ) = a b a a b F ( 4 ) p p + 1 p + 2 p + 3 ( n ) F ( ) n 4 ( n ) = | এফ ( এন - 1 ) |F(n) F(n)F(n)F(4)=abaabF(4)pp+1p+2p+3(n)F()n4(n)=|F(n1)|(উদাহরণস্বরূপ, )।(4)=3

দৈর্ঘ্য এর একটি স্ট্রিং দেওয়া হয়েছে , প্রতিটি জন্য হয় এমন পজিশনের সেট হতে দিন । আমরা আপনার পদ্ধতির চলমান মোটামুটি দ্বারা আবদ্ধ করতে পারি যেখানে সর্বাঙ্গে সমষ্টি রান যেমন যে (বলুন)। যেহেতু এর ঘটনাগুলি কমপক্ষে দ্বারা পৃথক করা হয় , আমরা দেখতে পাই যে চলমান সময়টি আদেশ দ্বারা সীমাবদ্ধ যেহেতু ফিবোনাচি শব্দের দৈর্ঘ্য তাত্ক্ষণিকভাবে বৃদ্ধি পায়, তাই । অবশিষ্ট পদটি হ'লএন পি ( এন ) এফ ( এন ) n | পি ( এন ) | | এফ ( এন ) | এন | এফ ( এন - 1 ) | এন এফ ( এন ) | এফ ( এন - 1 ) | N | এফ ( এন ) | ( এনNnP(n)F(n)n|P(n)||F(n)|n|F(n1)|NF(n)|F(n1)|

n|F(n)|(N|F(n1)|+1).
n|F(n)|=O(N)Σএনহে(এন)=হে(এনলগএন), যেহেতু অনেকগুলি শর্ত থাকেআমরা উপসংহারে পৌঁছেছি যে চলমান সময় হ'ল ।লগএনহে(এনলগএন)

বিপরীতে, চলমান সময় হ'ল , যেমন প্রবর্তন দ্বারা প্রমাণিত হতে পারে। আমরা উপসংহারে পৌঁছেছি যে দৈর্ঘ্যের সবচেয়ে খারাপ সময় চলমান সময়টি হ'ল ।এফএনΩ(|এফএন|লগ|এফএন|)এনΘ(এনলগএন)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.