২-৪ঃ ভেক্টর মডিফাইয়ার ফাংশন -২

এই পেজে আমরা শিখবো কীভাবে ভেক্টরের ভ্যালু গুলা বিল্টইন ফাংশনের সাহায্যে রিপ্লেস করা যায় বা কোন একটি নির্দিষ্ট ভ্যালু খুজে বের করা যায় ।

আসেন কিছু পাওয়ারফুল বিল্ট ইন ফাংশন সম্পর্কে জেনে নেয়া যাক।

  1. replace() -> এই ফাংশনের সাহায্যে আমরা vector এর কোন একটি নির্দিষ্ট রেঞ্জের একটি নির্দিষ্ট ভ্যালুকে অন্য একটি ভ্যালু দিয়ে রিপ্লেস করে দিতে পারি। এই ফাংশনের টাইম কমপ্লেক্সিটি হলো O(N) .

Syntax : replace(v.begin() , v.end() , target_value , change_value)

vector<int>v = {1,2,3,4,7,6,4,5,4,3,4} ;

replace(v.begin() , v.end() , 4, 100) // এই ফাংশন টি ভেক্টরের যে যে স্থানে ভ্যালু 4 আছে তা চেঞ্জ করে 100 করে দিবে 

for(int i =0 ;i<v.size() ;i++) {

cout << v[i] << endl ;

} // Output :  1 2 3 100 7 6 100 5 100 3 100 
  1. find() -> এই ফাংশনের সাহায্যে আমরা ভেক্টর এর কোন একটি ভ্যালু আছে কিনা খুজে দেখতে পারি। এই ফাংশন আমাদের একটি ইটারেটর রিটার্ন করে যা ঐ ভ্যালুটির ইন্ডেক্সে পয়েন্ট করা থাকে, আর যদি ভ্যালুটি খুজে না পায় তবে v.end() এ পয়েন্ট করে থাকে । এই ফাংশনের টাইম কমপ্লেক্সিটি হলো O(N).

Syntax : find(v.begin() , v.end() , target_value )

vector<int>v = {1,2,3,4,7,6,4,5,4,3,4} ;

auto it = find(v.begin() , v.end() , 6) ; // ৬ ভ্যালুটি ভেক্টরের মধ্যে পেলে প্রথম যে জায়গায় ভ্যালুটি আছে তার ইটারেটর টা রিটার্ন করা হবে


if( it != v.end()){ // যদি ভ্যালুটি পাওয়া না যায় তবে it তে v.end() স্টোর হবে। 
cout << "found the value " << *it << endl } // যেহেতু ইটারেটর একটি পয়েন্টার এর মতো কাজ করে , তাই আমরা it কে dereferencing করে তার ভ্যালু দেখতে পারবো
else {
cout << "not found" << endl ;
} 

Last updated