麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > vector, list, map等容器使用場合是什么?

vector, list, map等容器使用場合是什么?

來源:千鋒教育
發布人:xqq
時間: 2023-10-13 01:39:53 1697132393

一、vector, list, map等容器使用場合

vector適用于對象簡單,變化較小,并且頻繁隨機訪問的場景。list適用經常進行插入和刪除并且不經常隨機訪問的場景。map主要用于資料一對一映射的情況,map內部自建一棵紅黑樹,這棵樹具有對數據自動排序的功能。以在map內部所有的數據都是有序的。比如一個班級中,每個學生的學號跟他的姓名就存在著一對一映射的關系。

list封裝鏈表,以鏈表形式實現,不支持[]運算符。對隨機訪問的速度很慢(需要遍歷整個鏈表),插入數據很快(不需要拷貝和移動數據,只需改變指針的指向)。新添加的元素,list可以任意加入。vector封裝數組,使用連續內存存儲,支持[]運算符。對隨機訪問的速度很快,對頭插元素速度很慢,尾插元素速度很快新添加的元素,vector有一套算法。map采用平衡檢索二叉樹:紅黑樹存儲結構為鍵值對

延伸閱讀:

二、vector的內存管理與效率

當元素需要插入且容器的容量不足時會發生重新分配。這會導致vector的原始內存分配和回收、對象的拷貝和析構和迭代器、指針和引用的失效。
問題產生的原因:vector容器分配的是一塊連續的內存空間,每次容器的增長,并不是在原有連續的內存空間后再進行簡單的疊加,而是重新申請一塊更大的新內存(一般是當前大小的1.5~2倍的新內存區),并把現有容器中的元素逐個復制過去,同時銷毀舊的內存。
問題解決方法
提前使用reserve()函數設定容器大小,在vector操作的末尾添加vector().swap(v)來修正過剩的空間或內存。

聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
主站蜘蛛池模板: 国产精品特黄一级国产大片| 国产精品嫩草影院一二三区入口| 国产亚洲欧美日韩俺去了| 男人天堂网在线| 欧美三级在线免费观看| 日本漂亮人妖megumi| 日本人与黑人xxxx| 国产男男| 亚洲精品永久www忘忧草| 在线观看三级激情视频| 福利久草| 日本卡一卡二新区| 91看片网| 免费在线观看亚洲| 国产亚洲精品拍拍拍拍拍| 国产97人人超碰caoprom| 你看桌子上都是你流的| 老师您的兔子好软水好多动漫视频| 天天做天天爱夜夜爽毛片毛片| 一个人看的视频www在线| 7777精品久久久大香线蕉| 久久精品日日躁精品| 天天操夜| 一级做α爱**毛片| 亚洲va久久久噜噜噜久久天堂| 国产精品无码久久久久| 真实的和子乱拍免费视频| 黑人性片| 中文字幕一区二区三区精彩视频| 亚洲综合色视频在线观看| 香蕉视频yy| 老公去上班的午后时光| 欧美日韩欧美| 亚洲麻豆视频| 夜夜夜夜猛噜噜噜噜噜试看| 羞羞电影快播| 日韩一级在线播放免费观看| 最近高清中文字幕在线国语5| 日本电影中文字幕| 国产一级做a爰片久久毛片| a级毛片在线观看|