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