C++容器详解
容器是一个holder对象,它存储其他对象(其元素)的集合。容器管理其元素的存储空间,并提供成员函数来直接或通过迭代器(引用具有类似指针属性的对象)访问它们。
本专栏主要介绍容器(vector、list、map、set等)的使用方法,和 algorithm 算法的应用。
一丁_
这个作者很懒,什么都没留下…
展开
-
C++ 中 string 用法详解
一、字符串及区别(1)字符串字符串是表示字符序列的对象。标准字符串类(string)通过类似于标准字节容器的接口为这些对象提供支持,但添加了专门设计用于使用单字节字符串操作的功能。该字符串类(string)是一个实例的basic_string类模板使用字符(即字节)作为其类型,其默认char_traits和分配器类型(见basic_string的更多信息的模板)。请注意,此类(st...原创 2019-05-15 19:57:10 · 2289 阅读 · 1 评论 -
二叉树递归遍历算法分析-入栈及出栈(调用堆栈窗口)
前言:本文作者意在分析,递归算法在二叉树遍历中的执行过程,主要分析多重递归算法是如何一步步调用自身(保存现场)和调用返回(恢复现场)。在分析过程中,借用了设置断点,查看堆栈窗口中入栈和出栈情况。并绘制了两种分析图。下图 1 既是要从键盘输入的二叉树,先序遍历结果为 ABDFCE。@表示 NULL。关于二叉树遍历算法请读者自行学习,本文不做详细解读。运行程序如下。 ...原创 2019-04-26 18:51:21 · 7251 阅读 · 4 评论 -
栈的知识点总结(顺序栈和链栈)——应用:数制转换
目录一、栈的逻辑结构1.栈定义2.栈与线性表的区别与联系3.栈的相关运算4.要对栈状态进行标示,仅需要一个参数即可。二、顺序栈1.顺序栈数据结构2.顺序栈初始化3.判断栈空和栈满4.压栈5.弹栈6.取栈顶元素7.顺序栈进行数制转换,实现10进制转8进制三、链栈1.链栈数据结构定义2.初始化3.判断栈空4.压栈5.弹栈6...原创 2019-04-18 17:57:51 · 4632 阅读 · 1 评论 -
线性表结构一——顺序表初始化,插入,删除,查找。typedef 解释,链表知识点总结
目录一、顺序表定义及特点1.顺序表定义2.顺序表特点二、顺序表定义三、顺序表插入运算四、顺序表删除运算五、顺序表元素查找六、顺序表取元素数据七、主函数定义注1. typedef 解释注2. 链表知识点总结一、顺序表定义及特点1.顺序表定义用数组存储线性表,称作线性表的顺序存储结构或顺序映像,用这种方法存储的线性表称作顺序表。2.顺序...原创 2019-04-15 18:15:58 · 5958 阅读 · 1 评论 -
线性表结构二——链表知识点总结,动态存储分配,程序运行空间定义
目录〇、前言一、链表初始化二、链表创建三、插入链表结点四、删除链表结点五、获取链表长度&链表遍历六、获取链表元素七、链表置空八、链表逆序九、链表判断是否有环十、单链表讨论例一、单链表实现一元指数多项式的相加注释1.动态存储分配 malloc ()、calloc()、free()、realloc()注释2.程序运行空间本文在“作者:...原创 2019-04-11 20:47:35 · 3956 阅读 · 1 评论 -
vector容器用法详解
目录类模板std::vector容器属性函数总览:Iterators(迭代器):begin:将迭代器返回到开头。end:将迭代器返回到结束。rbegin:返回反向迭代器以反向开始。rend:将反向迭代器返回到反向结束。Capacity(容量):max_size:迭返回代器可以作为内容保存的最大元素数。size:返回向量中的元素数。resize:...原创 2019-05-05 10:17:44 · 4493 阅读 · 1 评论 -
list (链表)和 vector 区别及 list 容器详解
注:读者在阅读本文前,需要有 vector 容器的基础。想学习 vector 请看博主的另一篇文章:https://blog.csdn.net/qq_41291253/article/details/89840185一、list 简介链表是顺序容器,允许在序列中的任何位置进行恒定时间插入和擦除操作,并在两个方向上进行迭代。链表容器实现为双向链表; 双向链表可以将它们包含的每个元素存储在...原创 2019-05-21 20:26:26 · 3722 阅读 · 0 评论 -
deque(双端队列)和 vector 区别及 deque 详解
注:想要理解本篇博客,需要读者有基本的 vector 的知识,请看博主的另一篇文章:https://blog.csdn.net/qq_41291253/article/details/89840185一、deque 简介(1)deque:双端队列template <class T,class Alloc = allocator < T >> class de...原创 2019-05-21 19:44:16 · 2638 阅读 · 1 评论 -
queue(队列) 和 stack(栈) 容器详解
一、概念FIFO queue:queues是一种容器适配器,专门设计用于在FIFO上下文中(先进先出)操作,其中元素从容器的一端插入并从另一端提取.queues实现为容器适配器,它是使用特定容器类的封装对象作为其底层容器的类,提供一组特定的成员函数来访问其元素。元素被推入特定容器的“后面”并从其“前面”弹出。底层容器可以是标准容器类模板之一或其他一些专门设计的容器类。该底层容...原创 2019-05-21 18:45:03 · 2983 阅读 · 0 评论 -
algorithm用法详解
标准库模板: Algorithms头文件<algorithm>定义了一系列特别设计用于元素范围的函数。范围是可以通过迭代器或指针访问的任何对象序列,例如数组或某些STL 容器的实例。但请注意,算法直接通过迭代器对值进行操作,不会以任何方式影响任何可能容器的结构(它永远不会影响容器的大小或存储分配)。在开始之前,首先介绍下一些模板的知识,本文在介绍具体函数之前,先把函数总览列...原创 2019-05-07 19:18:39 · 11419 阅读 · 3 评论