Skip to main content

মার্জ সর্ট ইমপ্লিমেন্টেশন ইন সি প্লাস প্লাস

/**
* Algorithm : Merge Sort
* Writer : Mehadi Hasan Menon.
**/
#include <iostream>
#include <vector>
using namespace std;
void merge(vector <int>& array, vector <int>& array1, vector <int>& array2)
{
array.clear();
int i, j;
for(i = 0, j = 0; i < array1.size() && j < array2.size(); )
{
if(array1.at(i) < array2.at(j)) {
array.push_back(array1.at(i));
i++;
}
else if(array1.at(i) > array2.at(j)) {
array.push_back(array2.at(j));
j++;
}
}
// if something left in array1
while(i < array1.size()) {
array.push_back(array1.at(i));
i++;
}
// if something left in array1
while(j < array2.size()) {
array.push_back(array2.at(j));
j++;
}
}
void merge_sort(vector <int>& array)
{
if(array.size() > 1)
{
// split 1st half
vector <int> array1(array.begin(), array.begin() + array.size() / 2);
merge_sort(array1);
// split 2nd half
vector <int> array2(array.begin() + array.size() / 2, array.end());
merge_sort(array2);
// merge sorted list
merge(array, array1, array2);
}
}
int main()
{
vector <int> array;
array.push_back(3); array.push_back(10); array.push_back(17); array.push_back(2);
merge_sort(array);
for(int i = 0; i < array.size(); i++) {
cout << array[i] << " ";
}
cout << endl;
return 0;
}
view raw marge_sort.cpp hosted with ❤ by GitHub

Comments

Popular posts from this blog

উবুন্টুতে রুট পাসওয়ার্ড ভুলে তা রিকভার করার উপায় ।

যদি কেউ রুট পাসওয়ার্ড ভুলে যান তাহলে নিচের কাজ গুলো করে নতুন পাসওয়ার্ড সেট করতে পারবেন: প্রথমে পিসি রিস্টার্ট দিন । দিয়ে UP/DOWN করে kernel version সিলেক্ট করে e চাপুন । ব্ল্যাক Screen আসবে এবার একটা Space দিয়ে লিখুন “Single” [ Enter ] এরপর b চাপুন ফলাফল : লিনাক্সের Single user Mood এ চলে আসছেন । এখন লিখুন passwd root [ Enter ] এখন নতুন পাসওয়ার্ড খানা টাইপ করেন [ এন্টার ] আবার টাইপ করেন [ এন্টার ] কাজ শেষ , এবার reboot টাইপ করেন । এখন নতুন পাসওয়ার্ড দিয়ে লগইন করেন। পুনশ্চ : যদি আপনার উইন্ডোজ এর সাথে ডুয়েল বুট করা থাকে তবে এই প্রক্রিয়া কাজ করবে না ।

Fix The BIOS in this system is not fully ACPI compliant in Windows 7

এই সমস্যা সমাধান করার জন্য আপনি নিচের ধাপ গুলো অনুসরণ করুন। ধাপ ১ :  আপানর  কম্পিউটার এ উইন্ডোজ এর ডিস্ক থেকে বুট করুন । নীচের মত উইন্ডো আসলে Shift + F10 চাপুন । এর ফলে কমান্ড প্রম্প্ট ওপেন হবে। ধাপ ২ : এখন CMD তে নিচের কমান্ড গুলি ধারবাহিক ভাবে লিখুন C: bootrec /FixMbr bootrec /FixBoot bootrec /RebuildBcd exit  এখানে  C হলো যে ড্রাইভ এ উইন্ডোজ দেয়া আছে।  আপনার যদি অন্য কোনো ড্রাইভ ( D, E, F, ..... ) এ উইন্ডোজ দেয়া থাকে তবে আপনাকে C এর জায়গায় সেই ড্রাইভ এর নাম লিখতে হবে।  উপরের সব কমান্ড যদি সঠিক ভাবে বিল্ড হয় তবে আপনি আপনার কম্পিউটার রিস্টার্ট দিন।  দেখবেন আপনার সমস্যা সমাধান হয়ে গেছে :D