Go to সুস্পষ্ট পথ গতিশীল প্রোগ্রামিং হল: দিন দুটি বর্ণের যা আদেশ একটি ফিবানচি শব্দের জন্য সংরক্ষণ অবস্থানে শুরু হয় , এবং এ খুঁজছেন দ্বারা এই নিরূপণ এবং । এটি বেশিরভাগ ক্ষেত্রে সময় নেয়, কারণ কেবলমাত্র লোগারিথিকভাবে অনেকগুলি সম্ভাব্য মান রয়েছে ।i j F ( i - 2 , j ) F ( i - 1 , j + fib ( i ) ) ও ( এন লগ এন ) iএফ( আমি , জে )আমিঞএফ( আমি - ২ , জে )এফ( i - 1 , j + fib( i ) )ও ( এন লগ)এন )আমি
তবে আমি সন্দেহ করি যে কেবল পজিশন থাকতে পারে যার জন্য অদম্য (যেমন যখন একই দৈর্ঘ্যের দুটি ফিবোনাচি শব্দ উপস্থিত থাকে তবে তারা কেবল তাদের দৈর্ঘ্যের বেশিরভাগ অংশের চেয়ে স্থায়ী ভগ্নাংশের জন্য ওভারল্যাপ করুন। এর অজস্র অবস্থানগুলি কেবলমাত্র এগুলির জন্য আপনাকে জন্য (ধ্রুবক সময়) গণনা করতে হবে । তাই আপনি যদি আমার সন্দেহ সত্য তাহলে আপনি এটি পর্যন্ত গতি বাড়াতে পারে প্রতিটি মানের জন্য nonempty অবস্থানের একটি তালিকা সম্পর্কে অবগত থাকার দ্বারা এবং জন্য তালিকাটি ব্যবহার করে জন্য তালিকার গণনার গতি বাড়াতে ।F ( i - 2 , j ) F ( i - 2 , j ) F ( i , j ) O ( n ) i i - 2 iও ( এন / ফাইব)( i ) )এফ( আমি - ২ , জে )এফ( আমি - ২ , জে )এফ( আমি , জে )ও ( এন )আমিi - 2আমি
আপনি যদি একটি অ্যারে সঞ্চয় করে রাখেন তবে স্পিডআপের পরেও স্পেসটি হবে তবে পরিবর্তে হ্যাশ টেবিল ব্যবহার করে এটি উন্নত করা যেতে পারে। অথবা বিকল্পভাবে আপনি বিট শব্দের সাথে বিট-প্যাকড অ্যারে সংরক্ষণ করতে পারেন (পর্যবেক্ষণটি ব্যবহার করে যা আপনাকে কেবল এটি খালি বা না তা জানা দরকার; আপনি প্রতিটি স্ট্রিংয়ের জন্য দুটি অক্ষর সন্ধান করে খুঁজে পেতে পারেন) ইনপুট স্ট্রিংয়ে এর প্রথম অবস্থানে রয়েছে)।ও ( এন লগ এন ) এফ ও ( এন ) লগ এনএফও ( এন লগ)এন )এফও ( এন ) logn