আমি আলগরিদম বইয়ের পরিচিতি থেকে শুরু করে উদাহরণটি পছন্দ করি , যা অ্যালগরিদম দক্ষতার তাত্পর্য বর্ণনা করে:
আসুন দুটি বাছাই করা অ্যালগরিদমগুলির তুলনা করা যাক: সন্নিবেশ সাজান এবং মার্জ সাজান । তাদের জটিলতা এবং । সাধারণত সাজানোর একত্রীকরণ একটি বড় ধ্রুবক ফ্যাক্টর আছে, তাই এর অনুমান করা যাক । ও ( এন লগ এন ) = সি 2 এন এলজি এন সি 1 < সি 2 2ও ( এন)2) = গ1এন2ও ( এন লগ)এন ) = গ2n lgএনগ1< গ2
আপনার প্রশ্নের উত্তর দেওয়ার জন্য, আমরা ধীর কম্পিউটার (বি) চলমান সংযোজন বাছাই অ্যালগরিদমের বিপরীতে একটি দ্রুত কম্পিউটারের (এ) চলমান সারণি অ্যালগরিদম কার্যকর করার সময়টি মূল্যায়ন করি।
আমরা মনে করি:
- ইনপুট সমস্যার আকারটি 10 মিলিয়ন সংখ্যা: ;n = 107
- কম্পিউটার এ প্রতি সেকেন্ডে নির্দেশাবলী কার্যকর করে (~ 10GHz);1010
- কম্পিউটার বি প্রতি সেকেন্ডে মাত্র নির্দেশাবলী কার্যকর করে (M 10MHz);107
- ধ্রুবক কারণগুলি হ'ল (যা কিছুটা বাড়িয়ে দেওয়া হয়) এবং (বাস্তবে এটি ছোট)।সি 2 = 50গ1= 2গ2= 50
সুতরাং এই অনুমান সঙ্গে এটি লাগে
107
2 ⋅ ( 107)2 নির্দেশাবলী1010 নির্দেশ / দ্বিতীয়= 2 ⋅ 104 সেকেন্ড
জন্য কম্পিউটার এ নম্বর বাছাই এবং
107
50 ⋅ 107এলজি107 নির্দেশাবলী107 নির্দেশ / দ্বিতীয়63 1163 সেকেন্ড
কম্পিউটার বি।
সুতরাং, কম্পিউটার, যা 1000 গুণ ধীর, 17 গুণ দ্রুত সমস্যার সমাধান করতে পারে। বাস্তবে সংযুক্তি বাছাইয়ের সুবিধা আরও বেশি তাৎপর্যপূর্ণ এবং সমস্যার আকারের সাথে বৃদ্ধি পাবে। আমি আশা করি এই উদাহরণটি আপনার প্রশ্নের উত্তর দিতে সহায়তা করবে।
যাইহোক, এটি সমস্ত অ্যালগোরিদম জটিলতা সম্পর্কে নয়। আজ কেবলমাত্র উচ্চতর সিপিইউ ফ্রিকোয়েন্সি সহ মেশিনটি ব্যবহার করে একটি গুরুত্বপূর্ণ গতি অর্জন করা প্রায় অসম্ভব। লোকেরা মাল্টি-কোর সিস্টেমগুলির জন্য অ্যালগরিদমগুলি ডিজাইন করা দরকার যা ভাল স্কেল করে। এটিও একটি কঠিন কাজ, কারণ কোর বৃদ্ধি হওয়ার সাথে সাথে একটি ওভারহেড (উদাহরণস্বরূপ মেমরির প্রবেশাধিকার পরিচালনার জন্য) বৃদ্ধি পায়। সুতরাং লিনিয়ার স্পিডআপ পাওয়া প্রায় অসম্ভব।
সুতরাং সংক্ষেপে বলা যায়, দক্ষ অ্যালগরিদমগুলির নকশা আজ আগের মতোই গুরুত্বপূর্ণ, কারণ দক্ষ অ্যালগরিদমের সাথে তুলনা করে ফ্রিকোয়েন্সি বৃদ্ধি বা অতিরিক্ত কোর আপনাকে গতিবেগ দেবে না।