ในบทความนี้เราจะพูดถึงการทำงาน ไวยากรณ์และตัวอย่างของฟังก์ชัน map::lower_bound() ใน C++ STL
แผนที่ใน C++ STL คืออะไร
แผนที่เป็นคอนเทนเนอร์ที่เชื่อมโยงกัน ซึ่งอำนวยความสะดวกในการจัดเก็บองค์ประกอบที่เกิดขึ้นจากการรวมกันของค่าคีย์และค่าที่แมปในลำดับเฉพาะ ในคอนเทนเนอร์แผนที่ ข้อมูลจะถูกจัดเรียงภายในเสมอโดยใช้คีย์ที่เกี่ยวข้อง ค่าในคอนเทนเนอร์แผนที่สามารถเข้าถึงได้โดยคีย์เฉพาะของมัน
แผนที่::lower_bound() คืออะไร
ฟังก์ชัน map::lower_bound() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว
ไวยากรณ์
Map_name.lower_bound(key& k);
พารามิเตอร์
ฟังก์ชันนี้ยอมรับได้เพียง 1 พารามิเตอร์ -
- k − กุญแจที่เราต้องการค้นหา
คืนค่า
ฟังก์ชันนี้จะคืนค่า iterator ที่ชี้ไปยังองค์ประกอบแรกของคีย์ 'k' ซึ่งจะถือว่าไปก่อนคีย์ k
ตัวอย่าง
อินพุต
map<char, int> newmap; newmap[‘a’] = 1; newmap[‘b’] = 2; newmap[‘c’] = 3; newmap.lower_bound(b);
ผลลัพธ์
a:1
ตัวอย่าง
#include <bits/stdc++.h>
using namespace std;
int main() {
map<int, int> TP_Map;
TP_Map.insert({5, 50});
TP_Map.insert({2, 30});
TP_Map.insert({1, 10});
TP_Map.insert({4, 70});
cout<<"\nTP Map is : \n";
cout << "MAP_KEY\tMAP_ELEMENT\n";
for (auto i = TP_Map.rbegin(); i!= TP_Map.rend(); i++) {
cout << i->first << "\t" << i->second << endl;
}
auto i = TP_Map.lower_bound(2);
cout << "The lower bound of key 2 is ";
cout << i->first << ": " << i->second << endl;
auto i_1 = TP_Map.lower_bound(3);
cout << "The lower bound of key 3 is ";
cout << i_1->first << " :" << i_1->second << endl;
return 0;
} ผลลัพธ์
TP Map is: MAP_KEY MAP_ELEMENT 5 50 4 70 2 30 1 10 The lower bound of key 2 is 2 :30 The lower bound of key 3 is 4 :70