摘要: vector 变长数组 初始化方式 vector a(10, 3); //初始化,10个3 vector a[10]; 声明一个数组 支持的函数 size() 时间复杂度O(1) length() 同size() empty() clear() 并不是所有的容器都有这个方法 front(), bac 阅读全文
posted @ 2021-04-17 23:43 呼_呼 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 哈希表存储结构 最常用的两类:开放寻址法、拉链法 模拟散列表 拉链法 #include <iostream> #include <cstring> using namespace std; //做hash时整个数组的长度取成质数,同时这个数离2的幂次最远 const int N = 100003; 阅读全文
posted @ 2021-04-17 17:57 呼_呼 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 手写堆需要支持的操作 插入一个数 求集合当中的最小值 删除最小值 删除任意一个元素 修改任意一个元素 堆是一棵完全二叉树 大根堆和小根堆的特点 存储方式 用一个一维数组来存储 位置1存储根节点(下标从0开始需要特殊出根节点,因为0 * 2 == 0) 对于节点x,左儿子的下标为2x,右儿子的下标为2 阅读全文
posted @ 2021-04-17 16:38 呼_呼 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 题外:突然想起前两天百度暑期实习笔试第二题(n个比赛选手最开始均匀分配到n个准备区,之后有两种操作,一种是将两个准备区的选手合并到一个准备区,关闭其中一个准备区;第二种是查询两个选手当前所在准备区编号的距离)应该是考察并查集的,tmd又想了想这不就是裸题吗。。。当时没复习到完全没想到这茬儿,自己在那 阅读全文
posted @ 2021-04-17 14:59 呼_呼 阅读(50) 评论(1) 推荐(0) 编辑