C++ STL Map 學案(初中生版)
一、學習目標
- 深入理解 STL 中
map
容器的概念、特點和用途。 - 熟練掌握
map
容器的基本操作,如插入、查找、刪除和遍歷元素。 - 能夠運用
map
容器解決實際編程問題,提升邏輯思維和編程實踐能力。
二、知識講解
引入
在日常生活中,我們常常會遇到各種對應關系。比如,我們每個人都有自己的身份證號碼,身份證號碼和人是一一對應的;字典里每個單詞都有其對應的釋義。在編程里,也有這樣一種工具能方便地處理這種對應關系,它就是 STL 中的 map
容器。
map
知識講解
map
是 C++ 標準模板庫(STL)中的一種關聯容器,它以鍵值對(key - value)的形式存儲數據。每個鍵(key)都是唯一的,就像身份證號碼一樣獨一無二,而每個鍵都對應著一個值(value),如同身份證號碼對應著一個人。map
會根據鍵的大小自動對元素進行排序,這使得我們可以快速地根據鍵找到對應的值。
map
基本操作
1. 包含必要的頭文件
要使用 map
容器,需要包含 <bits/stdc++.h>
頭文件,同時使用 using namespace std;
來簡化標準庫函數和類的使用。
#include<bits/stdc++.h>
using namespace std;
2. 定義 map
容器
定義 map
容器時,需要指定鍵和值的數據類型。例如,定義一個存儲學生姓名(字符串類型)和成績(整數類型)的 map
容器:
map<string, int> stu;
3. 插入元素
- 使用
[]
運算符:可以直接使用[]
運算符來插入元素。如果鍵不存在,會自動創建一個新的鍵值對;如果鍵已經存在,則會更新對應的值。
stu["Alice"] = 90;
- 使用
insert()
函數:也可以使用insert()
函數插入元素,它接受一個pair
對象作為參數。
stu.insert(pair<string, int>("Bob", 85));
4. 查找元素
使用 find()
函數查找指定鍵的元素。如果找到,返回指向該元素的迭代器;如果未找到,返回 map
的 end()
迭代器。
map<string, int>::iterator it = stu