Thursday, June 28, 2018

Reverse (Vector, String, Array)

মনেকর, প্রোগ্রামিং প্রতিযোগিতায় তোমাকে একটি স্ট্রিং দেয়া হলো- "london" এবং তোমাকে বলা হলো যে স্ট্রিংটিকে "nodnol" এইভাবে প্রকাশ করতে। কিংবা তোমাকে কিছু সংখ্যা দেয়া হল ১০, ২০, ১৫, ৫ এবং তোমাকে বলা হলো যে সংখ্যাগুলোকে ৫, ১৫, ২০, ১০ এইভাবে প্রকাশ করতে। তুমি এই প্রব্লেমটি কিভাবে সল্ভ করবে?? ডাটা স্ট্রাকচার ও এলগোরিদম  ব্যবহার করে অনেক বিশাল কোনো কোড লিখবে?? তুমি যদি reverse() Function সম্পর্কে জানো তাহলে তুমি মুহূর্তেই এই প্রব্লেম সল্ভ করতে পারো।


Vector এ reverse() Function: মনেকর, v একটি ভেক্টর। তাহলে ফাংশন কল দিবো এইভাবে-
reverse(v.begin(), v.end());

Array তে  reverse() Function: মনেকর, a একটি Array। তাহলে ফাংশন কল দিবো এইভাবে-
reverse(a, a+n);

String এ reverse() Function: মনেকর, s একটি String। তাহলে ফাংশন কল দিবো এইভাবে-
reverse(s.begin(), s.end());

Code:
/*  Reverse-Vector, String, Array  */

#include<cstdio>
#include<algorithm>
#include<string>
#include<vector>
using namespace std;
int main()
{
    vector <int> v;
    v.push_back(10);
    v.push_back(20);
    v.push_back(30);
    for(int i=0; i<(int)v.size(); i++)
    {
        printf("%d ", v[i]);
    }
    printf("\n");
    reverse(v.begin(), v.end()); //Reverse elements of vector
    printf("After reverse vector:\n");
    for(int i=0; i<(int)v.size(); i++)
    {
        printf("%d ", v[i]);
    }
    string s="abcd";
    printf("\n%s", s.c_str());
    reverse(s.begin(), s.end()); //Reverse characters of string
    printf("\nAfter reverse string:\n%s\n", s.c_str());
    int a[5]={1,2,3,4,5};
    for(int j=0; j<5; j++)
    {
        printf("%d", a[j]);
    }
    reverse(a, a+5); //Reverse elements of array
    printf("\nAfter reverse array:\n");
    for(int j=0; j<5; j++)
    {
        printf("%d", a[j]);
    }
    return 0;
}


No comments:

Post a Comment