中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

房地產(chǎn)集團網(wǎng)站建設方案廣州市新聞發(fā)布

房地產(chǎn)集團網(wǎng)站建設方案,廣州市新聞發(fā)布,做網(wǎng)站 什么后綴,窮人裝修3萬硬裝文章目錄 一、list 詳解1、內(nèi)存管理2、常用操作3、迭代器erase()刪除list中的元素 前言: C 標準模板庫(STL)中的 list 容器是一種雙向鏈表數(shù)據(jù)結構,它允許在常數(shù)時間內(nèi)進行插入和刪除操作,而無需重新分配整個容器或移動…

文章目錄

  • 一、`list` 詳解
    • 1、內(nèi)存管理
    • 2、常用操作
    • 3、迭代器+erase()刪除list中的元素

前言:

C++ 標準模板庫(STL)中的 list 容器是一種雙向鏈表數(shù)據(jù)結構,它允許在常數(shù)時間內(nèi)進行插入和刪除操作,而無需重新分配整個容器或移動大量元素list 容器由一系列節(jié)點組成,每個節(jié)點包含數(shù)據(jù)部分和指向前后節(jié)點的指針,這種結構使得 list 在某些場景下非常高效。本文將重點介紹 list 容器的內(nèi)存存儲機制及其常見用法。

一、list 詳解

1、內(nèi)存管理

list 容器的內(nèi)存存儲特點主要體現(xiàn)在以下幾個方面:

  • 非連續(xù)存儲: 與數(shù)組不同,list 的元素不存儲在連續(xù)的內(nèi)存塊中。每個元素(節(jié)點)包含數(shù)據(jù)部分以及指向前后節(jié)點的指針。這種結構使得 list 能夠靈活地在任意位置進行插入和刪除操作。
  • 動態(tài)內(nèi)存分配: 每次插入新元素時,list 會動態(tài)分配新的節(jié)點內(nèi)存。這種機制避免了像 vector 那樣在插入或刪除元素時可能需要重新分配整個容器的內(nèi)存,從而減少了內(nèi)存碎片化的風險。
  • 雙向鏈表: 每個節(jié)點包含兩個指針,一個指向前一個節(jié)點(prev),另一個指向下一個節(jié)點(next)。這使得 list 能夠在常數(shù)時間內(nèi)向前或向后遍歷。

2、常用操作

  • push_back(const T& value) 在 list 的末尾添加一個元素。
  • push_front(const T& value) 在 list 的開頭添加一個元素。
  • pop_back() 移除 list 的最后一個元素。
  • pop_front() 移除 list 的第一個元素。
  • insert(iterator pos, const T& value) 在指定位置插入一個元素。
  • erase(iterator pos) 移除指定位置的元素。
  • erase(iterator first, iterator last) 移除指定范圍內(nèi)的元素。
  • clear() 移除 list 中的所有元素。
  • sort() 對 list 進行排序。
  • sort(Compare comp) 使用自定義比較函數(shù)對 list 進行排序。
  • reverse():反轉(zhuǎn) list 中元素的順序。

3、迭代器+erase()刪除list中的元素

std::list 是一個雙向鏈表容器,它提供了 erase 成員函數(shù)來刪除元素。這個函數(shù)接受一個迭代器作為參數(shù),該迭代器指向要刪除的元素。調(diào)用 erase 后,該元素會從 list 中移除,并且 erase 會返回一個指向被刪除元素之后位置的迭代器(如果存在的話;如果刪除的是最后一個元素,則返回 end())。

示例:

#include <iostream>  
#include <list>  int main() {  // 創(chuàng)建一個 list 并初始化  std::list<int> myList = {1, 2, 3, 4, 5};  // 打印原始 list  std::cout << "Original list: ";  for (int val : myList) {  std::cout << val << " ";  }  std::cout << std::endl;  // 創(chuàng)建一個迭代器指向要刪除的元素(例如,值為 3 的元素)  auto it = std::find(myList.begin(), myList.end(), 3);  // 檢查是否找到了該元素  if (it != myList.end()) {  // 刪除元素,并獲取刪除后下一個元素的迭代器  it = myList.erase(it); // 注意:這里我們更新了 it 的值  // 可選:打印刪除后的 list  std::cout << "List after erasing 3: ";  for (int val : myList) {  std::cout << val << " ";  }  std::cout << std::endl;  } else {  std::cout << "Element 3 not found in the list." << std::endl;  }  // 注意:如果你不打算使用擦除后返回的迭代器(即不關心擦除后的下一個元素),  // 你也可以不更新 it,但之后不要使用它,因為它現(xiàn)在是一個無效迭代器。  return 0;  
}
http://m.risenshineclean.com/news/63311.html

相關文章:

  • 網(wǎng)站建設后臺管理便捷百度移動seo首選帝搜軟件
  • 用什么軟件做購物網(wǎng)站軟文推廣例子
  • 廊坊web大連seo按天付費
  • 像網(wǎng)站分類一樣的表格圖怎么做怎么開網(wǎng)店新手入門
  • 溫州網(wǎng)站建設方案維護seo外包公司多嗎
  • 泉州做網(wǎng)站設計公司東莞網(wǎng)站建設平臺
  • 網(wǎng)站站點地圖seo推廣人員
  • 做網(wǎng)站備案什么意思app推廣平臺放單平臺
  • wordpress網(wǎng)站生成app應用指數(shù)基金
  • 在線平面設計招聘搜索引擎優(yōu)化技術
  • 新網(wǎng)網(wǎng)站空間獨立控制面板常用的關鍵詞挖掘工具有哪些
  • 公司做網(wǎng)站 優(yōu)幫云國外免費建站網(wǎng)站搭建
  • dw 網(wǎng)頁設計與制作教程seo整站優(yōu)化更能準確獲得客戶
  • 重慶網(wǎng)站建設狐靈傳媒石家莊網(wǎng)絡推廣
  • 廠家批發(fā)網(wǎng)站平臺鄭州百度推廣代運營
  • 濟南網(wǎng)站建設魯icp備微信軟文是什么意思
  • 做簡歷的網(wǎng)站有哪些內(nèi)容百度快照怎么做
  • 網(wǎng)站維護學習小熊貓seo博客
  • 新聞熱點大事件北京seo供應商
  • 四川省住房建設廳網(wǎng)站進不去百度關鍵詞排名用什么軟件
  • 網(wǎng)站建設續(xù)費多少錢優(yōu)化seo方法
  • 北京手機網(wǎng)站建設公司新聞頭條免費下載安裝
  • 適合友情鏈接的網(wǎng)站市場營銷策劃方案書
  • 佛山新網(wǎng)站建設seo網(wǎng)站優(yōu)化專員
  • 機器ip后面加個端口做網(wǎng)站農(nóng)大南路網(wǎng)絡營銷推廣優(yōu)化
  • 成都那家網(wǎng)站制作公司好微信投放廣告多少錢
  • 大學生做那個視頻網(wǎng)站財經(jīng)新聞最新消息
  • 合肥網(wǎng)站制作廣東東莞今日最新消息
  • 怎么一個網(wǎng)站做的競價網(wǎng)站權重一般有幾個等級
  • 政府網(wǎng)站登錄界面模板網(wǎng)絡廣告營銷經(jīng)典案例