STL中的map,list,vectors常见,常用容器

Posted gumpzlc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STL中的map,list,vectors常见,常用容器相关的知识,希望对你有一定的参考价值。

  列举三个较为常见,用的也比较多的SRL模板容器

一、vectors,list(顺序结构)

  1、vectors相当于数组

    技术分享图片

  2、list

    技术分享图片

   3.vector与list的区别:

          vector和数组类似,它拥有一段连续的内存空间,并且起始地址不变,因此     它能非常好的支持随即存取,即 [ ] 操作符,但由于它的内存空间是连续的,所以在中间     进行插入和删除会造成内存块的拷贝,另外,当该数组后的内存空间不够时,需要重新     申请一块足够大的内存并进行内存的拷贝。这些都大大影响了vector的效率。         list就是数据结构中的双向链表,因此它的内存空间可以是不连续的,通过指针来进行数据的访问,这个特点使得它的随即存取变的非常没有效率,但由于链表的特点,它可以以很好的效率支持任意地方的删除 和插入。

 

二、map(存放的是不重复的成员)

  技术分享图片

  map的遍历:

    map<.....> M(容器名称);

    map<.....> ::iterator  iter;

    for(iter = M.begin();iter != M.end(); iter++)

    {

      iter->first(容器中第一个成员)

      iter->second(第二个)

    }

以上是关于STL中的map,list,vectors常见,常用容器的主要内容,如果未能解决你的问题,请参考以下文章

STL容器简介

STL中vector,list,deque和map的区别

STL中vector,list,deque和map的区别

STL学习笔记--4序列式容器之vector

STL中vector,list,deque和map的区别

求STL中List,Vector,Map,Set区别?