码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【c++面试题】02-STL概述


    STL概述

    • 1.背景:
    • 2.概念
    • 3.优点
    • 4.三大组件:容器、算法、迭代器
      • 容器

    1.背景:

    在许多环境下,就连软件开发最基本的数据结构(data structures)和算法(algorithm)都未能有一套标准。大量程序员被迫从事大量重复的工作,竟然是为了完成前人已经完成而自己手上并未拥有的程序代码,这不仅是人力资源的浪费,也是挫折与痛苦的来源。↵
    为了建立数据结构和算法的一套标准,并且降低他们之间的耦合关系,以提升各自的独立性、弹性、交互操作性(相互合作性interoperability),诞生了STL。↵

    2.概念

    STL(Standard Template Library),即标准模板库,是一个具有工业强度的,高效的C++程序库。它被容纳于C++标准程序库中,包括容器、算法、迭代器组件。

    3.优点

    ■STL是C++的一部分,因此不用额外安装什么,它被内建在你的编译器之内↵
    ■STL的一个重要特性是将数据和操作分离。数据由容器类别加以管理,操作则由可定制的算法定义。迭代器在两者之间充当“粘合剂”,以使算法可以和容器交互运作↵
    ■程序员可以不用思考STL具体的实现过程,只要能够熟练使用ISTL就OK了。这样就可以把精力放在程序开发的别的方面。↵
    ■STL具有高可重用性,高性能,高移植性,跨平台的优点↵

    高可重用性:STL中几乎所有的代码都采用了模板类和模版函数的方式实现,这相比于传统的由函数和类组成的库来说提供了更好的代码重用机会。

    高性能:如map可以高效地从十万条记录里面查找出指定的记录,因为map是采用红黑树的变体实现的。

    高移植性:如在项目A上用STL编写的模块,可以直接移植到项目B

    4.三大组件:容器、算法、迭代器

    容器

    序列式容器:vector、deque、list
    关联式容器:非线性的树结构,map

  • 相关阅读:
    训练跳跃(青蛙跳台阶),剑指offer,力扣
    2023年主要网络安全趋势:软件供应链攻击已成为第二大威胁
    【Unity入门计划】GameObject类(1)-GetComponent方法
    sklearn中的SparseCoder是什么?又该如何使用
    Vuex详解
    Python做题
    UE5.1_常用快捷键
    2022暑假强化学习记录
    mysql查询速度 limit 1000,10 和limit 10 一样快吗?
    【图形学】16 光照模型(一、理论与公式)
  • 原文地址:https://blog.csdn.net/kin_16/article/details/126276546
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号