একটি অ্যালগরিদম কি?

কিভাবে অ্যালগোরিদম বিশ্ব চালান আবিষ্কার করুন

একটি অ্যালগরিদম একটি নির্দেশাবলী সেট। সংজ্ঞা সত্যিই যে সহজ। একটি অ্যালগরিদম যেমন নির্দেশাবলী দেওয়া হিসাবে সহজ হতে পারে:

  1. এই পথ ধরে চলে যান
  2. প্রথম অধিকার নিয়ে
  3. বাম দ্বিতীয় ঘর খুঁজুন
  4. দরজা বন্ধ এবং
  5. প্যাকেজ বিতরণ

কিন্তু অ্যালগরিদমের সংজ্ঞা সহজ হয়, প্রকৃত অর্থ এবং এটি আমাদের জীবনকে প্রভাবিত করে কিভাবে খুব জটিল হতে পারে।

একটি অ্যালগরিদম একটি উদাহরণ

আমরা আমাদের দৈনিক জীবনের একটি অ্যালগরিদম যে ব্যবহার একটি সাধারণ উদাহরণ একটি রেসিপি হয়। নির্দেশাবলীর এই সেট আমরা প্রয়োজন উপাদান এবং উপাদানগুলি সঙ্গে কি কি নির্দেশাবলী আমাদের সব দেয়। সহজ, সঠিক?

কিন্তু মাপের কাপটি কোথায় রাখে জানি না? এটি খুঁজে পেতে আপনার একটি এলগরিদম প্রয়োজন। আপনি একটি পরিমাপ কাপ ব্যবহার কিভাবে একটি অ্যালগরিদম প্রয়োজন হতে পারে।

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

এটি কিভাবে একটি অ্যালগরিদম সহজ এবং জটিল উভয় হতে পারে। এবং যখন আমরা কম্পিউটার অ্যালগরিদমগুলির কথা বলি, বুঝতে পারি যে একটি কম্পিউটার কি করতে সক্ষম তা হল আলগোরিদিম তৈরির একটি মৌলিক অংশ।

কিভাবে সাজানো আলগোরিদিম বিবর্তিত

নির্মিত সবচেয়ে প্রাচীন অ্যালগরিদম একটি ছিল বুদ্বুদ ধরণের রুটিন। বুদ্বুদ সাজানোর একটি সংকলন, অক্ষর বা শব্দ একটি ডাটা সেটের মাধ্যমে looping দ্বারা সাজানোর জন্য একটি পদ্ধতি, পাশাপাশি মান প্রতিটি সেট তুলনা, এবং প্রয়োজন হলে তাদের সোয়াপিং।

এই লুপ পুনরাবৃত্তি হয় না হওয়া পর্যন্ত অ্যালগরিদম পুরো তালিকায় সরাতে নাও পারে, যার মানে মান সঠিকভাবে সাজানো হয়। অ্যালগরিদম এই ধরনের প্রায়ই একটি recursive অ্যালগরিদম হিসাবে উল্লেখ করা হয়, কারণ এটা টাস্ক সম্পন্ন না হওয়া পর্যন্ত নিজেই উপর ওভার loops

অ্যালগরিদমটি যতটা সহজ হবে:

  1. প্রথম মান যান
  2. যদি প্রয়োজনে পরবর্তী মান এবং সোয়াপ অবস্থার বিরুদ্ধে মান পরীক্ষা করুন
  3. পরবর্তী মান যান এবং তুলনা পুনরাবৃত্তি
  4. যদি আমরা তালিকার শেষে থাকি, তাহলে লুপের সময় কোনও মূল্য অচল হয়ে গেলে উপরের দিকে ফিরে যান।

কিন্তু বুদ্বুদ সাজানোর মূল্যগুলি সাজানোর সবচেয়ে কার্যকরী উপায় হতে পারে না। সময় গিয়েছিলাম এবং কম্পিউটার জটিল কাজগুলি আরও দ্রুত করতে সক্ষম হয়েছিলেন, নতুন শ্রেণীবিভাজন অ্যালগরিদম আপ popped।

এক ধরনের অ্যালগরিদম প্রথম তালিকা মাধ্যমে স্ক্যান করে এবং সাজানো মানগুলির একটি দ্বিতীয় তালিকা তৈরি করে। এই পদ্ধতিটি কেবল মূল তালিকার মাধ্যমে একটি পাস করে তোলে, এবং প্রতিটি মান দিয়ে, দ্বিতীয় তালিকাের মাধ্যমে এটি লুপ হবে যতক্ষণ না মানটি সংশোধন করার জন্য সঠিক স্থান খুঁজে পাওয়া যায়। সাধারণত, এটি বুদ্বুদ সাজানোর পদ্ধতি ব্যবহার করার চেয়ে আরো দক্ষ।

এই যেখানে আলগোরিদিম সত্যিই পাগল পেতে পারেন। অথবা সত্যিই আকর্ষণীয়, আপনি এটি তাকান কিভাবে উপর নির্ভর করে।

বুদ্বুদ সাজানোর পদ্ধতিটি অনেক উপায়ে মূল্যনির্ধারণের সবচেয়ে অকার্যকর পদ্ধতিগুলির মধ্যে একটি বলে মনে করা হয়, যদি মূল তালিকাটি যথাযথভাবে উপস্থাপিত হয় তবে বুদ্বুদ সাজানোর সবচেয়ে কার্যকরী এক হতে পারে। যে কারণে, যে ক্ষেত্রে, বুদ্বুদ সাজানোর এলগরিদম তালিকা মাধ্যমে এক সময় যেতে হবে এবং এটি সঠিকভাবে সাজানো নির্ধারণ করা হয়।

দুর্ভাগ্যবশত, আমরা সর্বদা জানি না আমাদের তালিকার presorted হয়, তাই আমরা একটি এলগরিদম নির্বাচন করা উচিত যে তালিকাভুক্ত করা হয় সবচেয়ে দক্ষ তালিকার একটি বড় সংখ্যা জুড়ে গড় ব্যবহার।

আমরা বাবল সাজানোর থেকে শিখতে কি

দৈনন্দিন জীবনে ফেসবুক আলগোরিদিম এবং আরো

অ্যালগরিদম প্রতিদিন কাজ করে মানুষকে সহায়তা করে। যখন আপনি ওয়েব অনুসন্ধান করেন, তখন একটি এলগরিদম কাজটি সেরা অনুসন্ধান ফলাফলগুলি খুঁজতে চেষ্টা করছে। দিকনির্দেশের জন্য আপনার স্মার্টফোনটি জিজ্ঞাসা করুন, এবং আপনার অ্যালগোরিদমটি আপনার জন্য সেরা রুট নির্ধারণ করে। এবং আপনি যখন ফেসবুকে ব্রাউজ করেন তখন একটি আলগোরিদিম নির্ধারণ করে যে আমাদের বন্ধু ফেসবুকের কোনটি আমাদের জন্য সবচেয়ে গুরুত্বপূর্ণ। (আসুন আমরা আশা করি আমাদের বন্ধুরা কোনও ফেইসবুক মনে করে না যে আমরা সবচেয়ে বেশি পছন্দ করি!)

কিন্তু অ্যালগরিদমিক চিন্তা ভাবনা আমাদের কম্পিউটার জীবনের বাইরেও আমাদের সাহায্য করতে পারে। এটি আমাদের আরও ভাল স্যান্ডউইচ তৈরিতে সহায়তা করতে পারে।

চলুন শুরু করা যাক আমি রুটি দুটি টুকরা দিয়ে শুরু, এক স্লাইস নেভিগেশন সরিষা ছড়িয়ে এবং অন্য এক টুকরা নেভিগেশন mayonnaise। আমি রুমে রুটি উপর এক টুকরা মে়োনিযেজ, কিছু হ্যাম উপরে, কিছু লেটুস, টমেটো দুই টুকরা এবং তারপর এটি সরিষা সঙ্গে যে স্লাইস সঙ্গে এটি টুপি এটি উপর সস উপর রাখা। ভাল স্যান্ডউইচ, ডান?

নিঃসন্দেহে যদি আমি তা খেয়ে ফেলি কিন্তু যদি আমি টেবিলে কিছুক্ষণের জন্য এটিকে ছেড়ে দিই, তবে টমেটোটির কিছু অংশ সতেজ হয়ে উঠতে পারে। এটি এমন একটি সমস্যা যা আমি মোটামুটি প্রত্যাশা করে নি, এবং আমি লক্ষ করার আগে বছর ধরে স্যান্ডউইচ তৈরি করতে পারি, কিন্তু একবার করলে, আমি আরও ভাল স্যান্ডউইচ তৈরির জন্য আমার অ্যালগরিদম পরিবর্তন করার উপায়গুলি চিন্তা করতে পারি।

উদাহরণস্বরূপ, আমি টমেটো থেকে পরিত্রাণ পেতে পারে। কিন্তু আমি যে টমেটো স্বাদ হারাতে চাই না তাই পরিবর্তে, আমি টমেটো রুটি এবং লেটুস পরে স্যান্ডউইচ নেভিগেশন রাখতে পারেন। এই লেটুস টমেটো এবং রুটি মধ্যে একটি প্রতিরক্ষামূলক বাধা তৈরি করতে পারবেন

এটি কিভাবে একটি অ্যালগরিদম বিবর্তিত। এবং একটি অ্যালগরিদম একটি অ্যালগরিদম হতে একটি কম্পিউটার দ্বারা চালানো হবে না। একটি অ্যালগরিদম একটি প্রক্রিয়া, এবং প্রসেস আমাদের চারপাশে হয়।