ট্রাভেলিং সেলসম্যান সমস্যা

ডায়ানামিক প্রোগ্রামিং () একটি খুবই গুরুত্বপূর্ণ বিষয় এবং বলা যায় প্রোগ্রামিং প্রতিযোগিতায় সব থেকে কঠিন বিষয়। এটিকে আমি কঠিন বলছি, এর কারন হলো এতে ভালো করার একটি মাত্র উপায়ম আর…

ফ্র্যাকশনাল ন্যাপস্যাক সমস্যা

গ্রীড অ্যালগরিদমের জন্য ফ্র্যাকশনাল ন্যাপস্যাক (Fractional Knapsack) খুব পরিচিত একটি সমস্যা। অনেকের কাছে এই অ্যালগরিদম কঠিন মনে হলেও, এটি অনেক সহজ একটি অ্যালগরিদম। এমনকি এর ইমপ্লিমেন্টেশন ও খুব সহজ। ছোট্ট…

বাইনারি সার্চ ট্রি

বাইনারি সার্চ ট্রি এর প্রতিটি নোডে একটি করে মান থাকে। এখানে মান গুলো এমন ভাবে থাকে যেন, ট্রি এর লেফট সাবট্রি (Left subtree) এর সকল মান রুট নোডে থাকা মান…

সর্টিংঃ বাবল সর্ট অ্যালগরিদম

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

সর্টিংঃ সিলেকশন সর্ট

সর্টিং অ্যালগোরিদমের মুল কাজই হচ্ছে অ্যারেতে থাকা দুটি উপাদানের অবস্থান সোয়াপ(swap) বা বিনিময় করা। সিলেকশন সর্ট অ্যারের সুচকগুলোকে প্রতিটি ইন্ডেক্সের জন্য লুপ করে। এখানে মনে রাখতে হবে যে, যদি অ্যারে…

সর্টিংঃ ইনসার্শন সর্ট

সর্ট বা sort করার মানে হলো, একটি নির্দিষ্ট ক্রম অনুসারে সসাজানো। যদি আমরা কোন ক্লাসের পরীক্ষার খাতা ১ রোল থেকে ৬০ রোল পর্যন্ত ক্রম অনুসারে সাজাই, তাহলে এটাকে সর্টিং বলা…