- 博客(9)
- 收藏
- 关注
原创 软件安装 tips
说来惭愧,教研室电脑都是师兄们帮忙装的,平时电脑遇到问题也有周围的男生帮忙。疫情期间不能上学,之前的笔记本又坏掉了。不得不自己在笔记本上装装装。“疫情教我做人”office使用OTP(office tool plus)官网下载操作步骤注:在下载时注意选择显示文字,可能会默认英文;LATEX分为tex live 和tex studio两部分操作步骤及下载注意在解压texli...
2020-03-09 15:46:20
548
原创 STL源码剖析--仿函数
定义:一种具有函数性质的对象;在C++11中,仿函数(functor)叫做了函数对象(function object);仿函数类的对象像函数一样被调用,调用仿函数类的对象时,实际调用的时仿函数类中重载的operator()函数;功能:仿函数主要用途是搭配STL算法;分类:算术类仿函数、关系运算类仿函数、逻辑运算类仿函数;函数指针:虽然函数指针也可以作为算法的参数,但是函数...
2020-03-06 20:59:51
274
原创 STL源码剖析—序列式容器—list、deque、stack、queue
list-数据结构(1)环装双向链表,只需要一个指针,可以完整表现整个链表(2)只要刻意在环状链表的尾端加上一个空白节点,便可满足“前闭后开”区间。空间分配(1)非连续存储空间,容量大小=元素个数;(2)每次配置一个节点的空间,当元素删除时,相应空间一并删除;迭代器(1)因为节点不连续保存在存储空间,不可以使用普通指针做迭代器;(2)双向链表,双向迭代器;(3)插入操...
2020-02-24 21:30:53
243
原创 STL源码剖析—序列式容器—vector
容器:array(数组)、list(串行)、tree(树)、stack(堆栈)、queue(队列)、hash table(散列表)、set(集合)、map…根据存储方式可以分为:序列式容器和关联式容器序列式容器:容器里面的数据可以排序,但是不会自动有序,可以利用算法排序;关联式容器:容器里面的数据不可排序,以键值对的形式存储。VECTOR数据结构:数组;vector和arra...
2020-02-24 18:32:00
175
原创 聚集索引和辅助索引
数据库的索引类似书的目录,我们通过标题以及对应的页码可以快速找到标题对应的内容。在数据库中,根据索引快速定位记录的结构,从磁盘读取数据。InnoDB存储引擎有聚集索引和辅助索引,是索引组织表,按照主键的顺序存储数据。聚集索引:按照每张表的主键构建一棵B+树,叶节点中存放表的整行数据,叶节点成为数据页,每个数据页之间通过一个双向链表进行连接。数据页存放每行的所有记录,非数据页(非叶...
2020-02-24 11:26:33
643
原创 STL源码剖析-迭代器(iterator)
GOF迭代器设计模式GOF:提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该对象的内部表示。C++两个编程范式GP:泛型编程,静态多态,多种数据类型在同一种算法或者数据结构上都可以操作,效率与针对某特定数据类型而设计的算法或结构相同,在编译期间可以具体确定数据类型,代码执行效率高。在STL中利用GP把容器和算法分而治之。OOP:动态多态。将算法和成员变量放到一个类中实现...
2020-02-23 17:51:22
258
原创 C++ 拓扑排序
拓扑排序是一个有向无环图(DAG)。要满足:(1)每个顶点出现且只出现一次。(2)若存在一条从顶点 A 到顶点 B 的路径,那么在序列中顶点 A 出现在顶点 B 的前面。构造拓扑序列的方法:(1)从 DAG 图中选择一个 没有前驱(即入度为0)的顶点并输出。(2)从图中删除该顶点和所有以它为起点的有向边。(3)重复 1 和 2 直到当前的 DAG 图为空或当前图中不存在无前驱的顶点为止...
2020-02-22 18:37:25
641
原创 MySQL练习题
#1、查找重复的电子邮箱(简单)(1)创建表;(2)插入数据;(3)查找 。CREATE TABLE email( ID INT NOT NULL PRIMARY KEY, Email CHAR(255) NOT NULL);INSERT INTO email (ID, email)VALUES(1,'a@b.com'),(2,'c@d.com'),(3,'a@b.com');...
2020-02-14 16:15:56
294
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅