优先队列虽然名字叫队列,但它的内部其实是由一个堆来维护其排序的。
既然名字叫做队列,那么使用它就要先包含头文件#include<queue>,优先队列和普通队列的不同就在于我们可以自定义优先队列内部数据的优先级,让优先级高的排在前面,优先出队。
#include<queue>
优先队列具有队列的所有特性,包括基本操作,只是在这基础上添加了内部的一个排序,它本质是一个堆实现的。
散列表(Hash table,也叫哈希表),是根据键(Key)而直接访问在内存储存位置的数据结构。也就是说,它通过计算一个关于键值的函数,将所需查询的数据映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。
在面试中,我们经常会被问到如何处理哈希冲突的问题。
数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建 查询 更新和删除数据 不同的存储引擎提供不同的存储机制 索引技巧 锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能 现在许多不同的数据库管理系统都支持多种不同的数据引擎 MySql的核心就是插件式存储引擎。
我记得有次面试的时候面试官提过一句initializer_list,当时只是知道这个东西是C++11中的新类型,但并没有去深入了解它,今天突然想到了就看了一些文章,随便记录一下。
C++11提供的新类型,定义在头文件中。
12
template< class T >class initializer_list;
回忆一下我们初始化一个vector有哪些方法?
Trie树,又叫字典树、前缀树(Prefix Tree)、单词查找树 或 键树,是一种多叉树结构。如下图: