摘要: 一、基础篇 C++标准模板库(STL) 1.vector 可以理解为“变长数组” .size() 获取vector中元素的个数,返回unsigned类型 .clear() .push_back(x) 在vector后面添加一个元素x .pop_back() 删除vector的尾元素 .insert( 阅读全文
posted @ 2018-03-21 20:14 dear_diary 阅读(590) 评论(0) 推荐(0) 编辑
摘要: 1.时间处理 PAT中有些问题把时间转换为以 s 为单位可以简化很多操作。 2.日期处理 3.进制转换 4.最大公约数、最小公倍数 5.分数的输入形式 6.判断是否为素数(Prime) N不会被除自己以外的大于根号N的整数整除(减少运算复杂度) 7.C++ sort()排序函数 8.字符串Hash 阅读全文
posted @ 2018-03-21 12:15 dear_diary 阅读(537) 评论(0) 推荐(0) 编辑
摘要: 1.图的DFS 邻接矩阵版: 领接表版: 2.图的BFS 邻接矩阵版: 领接表版: 3.单源最短路径 Dijkstra (适合无负权路径) 两个关键: 集合S存放已被访问的结点,用 bool vis[] 来实现 int d[] 表示起点 s 到达顶点 Vi 的最短距离 集合S存放已被访问的结点,用 阅读全文
posted @ 2018-03-21 12:10 dear_diary 阅读(578) 评论(0) 推荐(0) 编辑
摘要: //初始化 int father[N]; for(int i=1; i<=N; i++){ father[i] = i; //令father[i]为1也可 } //查找 int findFather(int x){ //由于x在下面的while中会变成根结点,因此先把原来的x先保存下 int a = x; while(x != father[x]){ //如... 阅读全文
posted @ 2018-03-21 12:05 dear_diary 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 树专题 1.DFS模板 2.BFS模板 3.二叉树的动态实现(指针) 4.二叉树的静态实现 5.树的遍历、树的静态写法 ​ 树:即子结点个数不确定且子结点没有先后次序的树。推荐使用静态写法 6.知道二叉树的先序和中序遍历,建立该二叉树 7.二叉树查找(BST) 8.平衡二叉树 AVL 阅读全文
posted @ 2018-03-21 12:03 dear_diary 阅读(627) 评论(0) 推荐(0) 编辑