關於c++stl中multiset集合容器的學習,看別人的**一百遍,不如自己動手寫一遍。
multiset多重集合容器和set集合容器的使用方法大多相同,不同的是multiset多重集合容器允許重複的元素鍵值插入。
1 #include2 #include
3 #include 4
using
namespace
std;56
struct
mycomp
12};
1314
struct
student
21};
2223
void print(multisetms);
24void rprint(multisetms);
2526
intmain()
27107
/*執行結果
108abc
109aaa
110123
111123
112111
113*/
114115
//如果元素是結構體,可以將比較函式寫在結構體內,見main函式之前的定義方法
116 multisetstudents;
117student someone;
118 someone.name="
jack";
119 someone.score=80.5
;120
students.insert(someone);
121122 someone.name="
tomi";
123 someone.score=57.5
;124
students.insert(someone);
125126 someone.name="
nacy";
127 someone.score=60.5
;128
students.insert(someone);
129130 someone.name="
nacy";
131 someone.score=60.5
;132
students.insert(someone);
133134 multiset:: iterator it2;
135for(it2 = students.begin(); it2 != students.end(); it2 ++)
138/*
執行結果
139jack:80.5
140nacy:60.5
141nacy:60.5
142tomi:57.5
143*/
144return0;
145}
146147
void print(multisetms)
148153
}154
155void rprint(multisetms)
156161 }
multiset多重集合容器
include include multiset標頭檔案 include using namespace std 允許重複的元素值插入 前序遍歷 根左右 中序遍歷 左根右 後序遍歷 左右根 int main cout endl multiset元素的刪除 刪除值為123的所有重複元素並返回刪除元素總...
vector容器的使用方法
這個網上隨便都有啦,google一下,應有盡有。說明 vector 是一種動態陣列 是基本 陣列的類模板。其內部定義了很多基本操作。include 注意 標頭檔案沒有 h 構造 這個建構函式還有乙個可選的引數,這是乙個型別為 t的例項,描述了各個向量種各成員的初始值 如 vectorv2 init ...
Deque容器的使用方法
容器deque和vector非常相似,操作函式基本一致。它採用動態陣列來管理元素,提供隨機訪問,可以在頭尾兩端進行快速安插和刪除元素操作。特別要注意,除了頭尾兩端,在任何地方安插與刪除元素,都將導致指向deque元素的任何pointers references iterators 失效。包括的標頭檔...