ব্যাখ্যা
•
Algorithm A
এর
running time
হলো
O(n
2
)
এবং
Algorithm B
এর
running time
হলো
O(n)
।
Asymptotic analysis
অনুযায়ী
n
বড় হলে
O(n
2
)
এর মান দ্রুত বৃদ্ধি পায়
,
আর
O(n)
তুলনামূলক ধীরে বৃদ্ধি পায়। তাই ছোট ইনপুটের ক্ষেত্রে কখনও
Algorithm A
দ্রুত হতে পারে
,
কিন্তু ইনপুট সাইজ যত বড় হবে
, Algorithm A
তত বেশি সময় নেবে। এজন্য বলা যায়
Algorithm A asymptotically Algorithm B
এর চেয়ে ধীর গতির।
সঠিক উত্তর হবে গ)
,
কারণ এটি দীর্ঘমেয়াদী (
asymptotic)
আচরণকে সঠিকভাবে প্রতিফলিত করে
,
অন্য অপশন গুলো সম্পূর্ণভাবে সঠিক নয়।
•
অ্যালগরিদম (
Algorithm A
এবং
B):
– Algorithm A এর running time হলো O(n
2
)।
– Algorithm B এর running time হলো O(n)।
– এখানে O(n
2
) মানে ইনপুট সাইজ বাড়ার সাথে সাথে Algorithm A এর সময় অনেক দ্রুত বৃদ্ধি পায়।
– অন্যদিকে O(n) মানে ইনপুট সাইজ বাড়লেও Algorithm B এর সময় ধীরে বৃদ্ধি পায়।
– তাই বড় ইনপুট সাইজের ক্ষেত্রে Algorithm A, Algorithm B এর তুলনায় অনেক ধীর হবে।
– তবে ছোট ইনপুট সাইজের ক্ষেত্রে কখনও কখনও Algorithm A দ্রুত হতে পারে, কারণ constant factor বা lower order terms এর প্রভাব থাকতে পারে।
– Algorithm A, Algorithm B এর চেয়ে asymptotically ধীর গতির।
–
সঠিক উত্তর: গ)
Algorithm A, Algorithm B
এর চেয়ে
asymptotically
ধীর গতির।
সূত্র:
– Cormen, Leiserson, Rivest, and Stein – Introduction to Algorithms (CLRS).
– MIT OpenCourseWare – Introduction To Algorithms
[link]
– Stanford CS 161 – Design and Analysis of Algorithms
[link]