深入分析C++中deque的使用
更新時(shí)間:2013年05月03日 11:07:53 作者:
本篇文章介紹了,深入分析C++中deque的使用。需要的朋友參考下
首先,當(dāng)考慮到內(nèi)存分配和執(zhí)行性能的時(shí)候,使用std::deque要比std::vector好。
Deque總覽
deque和vector一樣都是標(biāo)準(zhǔn)模板庫中的內(nèi)容,deque是雙端隊(duì)列,在接口上和vector非常相似,在許多操作的地方可以直接替換。假如讀者已經(jīng)能夠有效地使用vector容器,下面提供deque的成員函數(shù)和操作,進(jìn)行對(duì)比參考。
| 函數(shù) | 描述 |
| c.assign(beg,end) c.assign(n,elem) |
將[beg; end)區(qū)間中的數(shù)據(jù)賦值給c。 將n個(gè)elem的拷貝賦值給c。 |
| c.at(idx) | 傳回索引idx所指的數(shù)據(jù),如果idx越界,拋出out_of_range。 |
| c.back() | 傳回最后一個(gè)數(shù)據(jù),不檢查這個(gè)數(shù)據(jù)是否存在。 |
| c.begin() | 傳回迭代器重的可一個(gè)數(shù)據(jù)。 |
| c.clear() | 移除容器中所有數(shù)據(jù)。 |
| deque<Elem> c deque<Elem> c1(c2) Deque<Elem> c(n) Deque<Elem> c(n, elem) Deque<Elem> c(beg,end) c.~deque<Elem>() |
創(chuàng)建一個(gè)空的deque。 復(fù)制一個(gè)deque。 創(chuàng)建一個(gè)deque,含有n個(gè)數(shù)據(jù),數(shù)據(jù)均已缺省構(gòu)造產(chǎn)生。 創(chuàng)建一個(gè)含有n個(gè)elem拷貝的deque。 創(chuàng)建一個(gè)以[beg;end)區(qū)間的deque。 銷毀所有數(shù)據(jù),釋放內(nèi)存。 |
| c.empty() | 判斷容器是否為空。 |
| c.end() | 指向迭代器中的最后一個(gè)數(shù)據(jù)地址。 |
| c.erase(pos) c.erase(beg,end) |
刪除pos位置的數(shù)據(jù),傳回下一個(gè)數(shù)據(jù)的位置。 刪除[beg,end)區(qū)間的數(shù)據(jù),傳回下一個(gè)數(shù)據(jù)的位置。 |
| c.front() | 傳回地一個(gè)數(shù)據(jù)。 |
| get_allocator | 使用構(gòu)造函數(shù)返回一個(gè)拷貝。 |
| c.insert(pos,elem) c.insert(pos,n,elem) c.insert(pos,beg,end) |
在pos位置插入一個(gè)elem拷貝,傳回新數(shù)據(jù)位置。 在pos位置插入>n個(gè)elem數(shù)據(jù)。無返回值。 在pos位置插入在[beg,end)區(qū)間的數(shù)據(jù)。無返回值。 |
| c.max_size() | 返回容器中最大數(shù)據(jù)的數(shù)量。 |
| c.pop_back() | 刪除最后一個(gè)數(shù)據(jù)。 |
| c.pop_front() | 刪除頭部數(shù)據(jù)。 |
| c.push_back(elem) | 在尾部加入一個(gè)數(shù)據(jù)。 |
| c.push_front(elem) | 在頭部插入一個(gè)數(shù)據(jù)。 |
| c.rbegin() | 傳回一個(gè)逆向隊(duì)列的第一個(gè)數(shù)據(jù)。 |
| c.rend() | 傳回一個(gè)逆向隊(duì)列的最后一個(gè)數(shù)據(jù)的下一個(gè)位置。 |
| c.resize(num) | 重新指定隊(duì)列的長度。 |
| c.size() | 返回容器中實(shí)際數(shù)據(jù)的個(gè)數(shù)。 |
| C1.swap(c2) Swap(c1,c2) |
將c1和c2元素互換。 同上操作。 |
相關(guān)文章
CLion搭建配置C++開發(fā)環(huán)境的圖文教程 (MinGW-W64 GCC-8.1.0)
這篇文章主要介紹了CLion搭建配置C++開發(fā)環(huán)境的教程 (MinGW-W64 GCC-8.1.0),本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02
C++使用數(shù)組來實(shí)現(xiàn)哈夫曼樹
給定N個(gè)權(quán)值作為N個(gè)葉子結(jié)點(diǎn),構(gòu)造一棵二叉樹,若該樹的帶權(quán)路徑長度達(dá)到最小,稱這樣的二叉樹為最優(yōu)二叉樹,也稱為哈夫曼樹(Huffman?Tree)。哈夫曼樹是帶權(quán)路徑長度最短的樹,權(quán)值較大的結(jié)點(diǎn)離根較近2022-05-05

