首页 > 其他分享 >STL(2)

STL(2)

时间:2023-09-04 16:36:54浏览次数:49  
标签:map set STL 测试程序 vector key array

目录

容器的分类

  1. 序列式 sequence container

array 固定长度

vector 能在后部插入元素

deque 两边都能插入元素,但是技术上不易描述

list 双向链表

forward-list 单向链表

  1. 关联式 associative container

实现一个快速的查找
set/multiset map/multimap 底部使用红黑树(高度平衡,自动平衡)

set和map的差别,map每一个结点有key value,而set中key就是value

multi和non-multi的区别,multi表示key可以重复,没multi表示key无法重复
例如,存储学生信息用身份证号当主键可以使用map

  1. 无序容器 unordered container C++11

unordered_set unordered_map multiset multimap

底层使用hashtable,hash碰撞时使用链表的做法(公认是效率较高的解决办法

array测试程序

  • .data()函数
    写下array的首地址

vector测试程序

  • find()返回iterator类型,用*来取值,是循序查找,遍历数组

  • .capacity() 获得当前容量,由于vector容量的开辟时*2的类型的,所以会有一个capacity

deque原理

标签:map,set,STL,测试程序,vector,key,array
From: https://www.cnblogs.com/liviayu/p/17677409.html

相关文章

  • servlet,jsp,jstl用到的依赖与brand.jsp简单案例
    2023-09-03<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd">&......
  • JSTL基础部分
    在使用JSTL时记得正确引入了JSTL标签库<%@taglibprefix="c"uri="http://java.sun.com/jsp/jstl/core"%>jstlif标签判断test属性表示判断的条件(使用EL表达式输出)<br><c:iftest="${12==12}">正确<br></c:if>jstl多路判断<......
  • STL专题
    STL专题1.vector,变长数组,倍增的思想size()返回元素个数empty()返回是否为空clear()清空front()/back()push_back()/pop_back()begin()/end()[]支持比较运算,按字典序pair<int,int>first,第一个元素second,第二个......
  • STL- 常用算法
    5STL-常用算法概述:算法主要是由头文件<algorithm><functional><numeric>组成。<algorithm>是所有STL头文件中最大的一个,范围涉及到比较、交换、查找、遍历操作、复制、修改等等<numeric>体积很小,只包括几个在序列上面进行简单数学运算的模板函数<functional>定......
  • STL- 常用容器
    3STL-常用容器3.1string容器3.1.1string基本概念本质:string是C++风格的字符串,而string本质上是一个类string和char*区别:char*是一个指针string是一个类,类内部封装了char*,管理这个字符串,是一个char*型的容器。特点:string类内部封装了很多成员方法例如:查找fi......
  • STL- 函数对象
    4STL-函数对象4.1函数对象4.1.1函数对象概念概念:重载函数调用操作符的类,其对象常称为函数对象函数对象使用重载的()时,行为类似函数调用,也叫仿函数本质:函数对象(仿函数)是一个类,不是一个函数4.1.2函数对象使用特点:函数对象在使用时,可以像普通函数那样调用,可以......
  • STL初识
    2STL初识2.1STL的诞生长久以来,软件界一直希望建立一种可重复利用的东西C++的面向对象和泛型编程思想,目的就是复用性的提升大多情况下,数据结构和算法都未能有一套标准,导致被迫从事大量重复工作为了建立数据结构和算法的一套标准,诞生了STL2.2STL基本概念STL(......
  • Java 15 JSTL实现登录退出
     jstl.jsp<%@pagecontentType="text/html;charset=UTF-8"language="java"%><%@taglibprefix="c"uri="http://java.sun.com/jsp/jstl/core"%><%--if--%><%@taglibprefix="fmt"uri=&......
  • 【C++STL基础入门】vector运算和遍历、排序、乱序算法
    @TOC前言C++标准库提供了丰富的容器和算法,其中vector是最常用的容器之一。它以动态数组的形式存储元素,并提供了许多方便的运算符和算法来操作和处理数据。本文将介绍vector的基本运算、遍历方法、排序算法以及乱序算法。通过学习这些内容,您将能够更加灵活、高效地使用vector容器。......
  • JSTL中forEach标签 varStatus属性值
    特性        Getter                     描述current   getCurrent()         当前这次迭代的(集合中的)项index      getIndex()              当前这次迭代从0开始的迭代索引count     getCount()......