蓝桥准备
文章平均质量分 61
一只程序媛li
大学生
展开
-
第五章 动态规划 (一)(背包问题、)
背包问题、线性dp、区间dp、状态压缩dp、树形dp、计数、数位统计、状态压缩、记忆化搜索。原创 2024-02-25 20:57:08 · 668 阅读 · 0 评论 -
第五章 动态规划 (二)(数位统计DP,状态压缩DP,树形DP)
求一个区间所有数的各位中,中1~9各自出现的次数。如果要求1-xxxxxxx中第四位中1出现的次数,思想是分情况讨论(划分集合):假设数为:1原创 2024-02-28 22:16:01 · 402 阅读 · 0 评论 -
第五章 动态规划 ( 二)(线性dp,区间dp问题)
求从三角形顶端到底端的最大值。注意边界的初始化。状态的表示是到ij位置的最大值是多少。原创 2024-02-27 10:58:34 · 162 阅读 · 0 评论 -
数学知识(四)(容斥原理、博弈论)
容斥原理公式一共加或者减的式子个数。原创 2024-02-22 18:25:37 · 272 阅读 · 0 评论 -
第四章 数学知识(三)(高斯消元、求组合数、卡特兰数)
1、O(n^3)时间复杂度求解n元线性方程组2、三种初等行变换不影响方程组的解(通过初等行变换得到一个上三角形式)变换之后的三种情况变换过程:枚举每一列找到绝对值最大的一行,交换到第一行,变换为1,将其他行这一列的数化为0。每次进行完操作后在剩余的行中再去找某一列绝对值最大的行进行相同的变换。对于n=3的数,进行两次变换就可以得到上三角。(如下得到完美的阶梯型)从下往上消去未知数:高斯消元法求解线性方程组。原创 2024-02-22 10:18:02 · 291 阅读 · 0 评论 -
第四章 数学知识 (二)(欧拉函数、快速幂、扩展欧几里得、中国剩余定理)
/873 欧拉函数用公式定义法求某个数的欧拉函数int n;cin>>a;int res=a;i原创 2024-02-15 00:09:38 · 721 阅读 · 0 评论 -
第四章 数学知识(一)(质数,质因子,)
1、质数合数都是针对>=2的整数2、质数的判断一些因数的判断是不必要的。原创 2024-02-11 21:15:13 · 773 阅读 · 0 评论 -
第三章 搜索与图论(三)(最小生成树,二分图)
稠密图使用prim算法,稀疏图使用kruskal算法。原创 2024-02-10 16:14:11 · 1115 阅读 · 0 评论 -
第三章 搜索与图论(二)(最短路)
1、对于稠密图,由于朴素版的dijkstra算法与边数无关使用这种算法的复杂度较低。稀疏图用堆优化版的算法;单源最短路中存在负权边用SPFA 算法通常较好;多源用floyd算法;难点:如何建图,抽象为最短路问题。原创 2024-02-08 21:04:27 · 1454 阅读 · 0 评论 -
搜索与图论(一)(深搜,广搜,树与图的存储遍历,拓扑排序)
往深里搜,搜到叶子结点那里,回溯,到可以继续到叶子结点深搜的位置。1、回溯一定要恢复现场2、定义一个与当前递归层数有关的终止条件(题目要求的东西)3、每层都用循环判断是否存在可以dfs的路输出数字组合全排列的思想解决n皇后问题,用三个bool数组描述限制条件,用二维char数组保存结果,在恢复现场的时候也要恢复g数组,因为后面的其他结果可能不会将其覆盖掉。按照元素枚举的方式解决n皇后问题。原创 2024-02-06 20:23:48 · 925 阅读 · 0 评论 -
第三章 数据结构(三) (STL)
1、vector要尽量减少申请空间的次数,,不够的时候就直接变成两倍。原创 2024-02-05 08:34:05 · 526 阅读 · 0 评论 -
第二章数据结构(三)(哈希表、stl)
(1)不能映射为0,因为多个0组合到一起还是0,导致多个不同的字符串映射到同一个位置。字符串前缀哈希:将字符串当做一个p进制的数字,计算得到10进制的结果。2、开放寻址法 (数组长度是题目数据个数的2~3倍)没有位置向后找。可以利用前缀哈希计算出所有子串的哈希。3、字符串哈希(字符串前缀哈希法)1、拉链法 (加一个单链表)(2)不存在冲突的条件。原创 2024-02-03 16:01:13 · 253 阅读 · 0 评论 -
第二章 数据结构(二)(堆)
数组的方式存储、down和up操作实现各种操作。在小顶堆中一个点变小了应该向上更新(只要比父节点小就交换),一个结点变大了就往下走(只要)6、模拟堆的各种操作,维护hp数组保存堆中某个位置的数是第几个插入的;维护ph数组保存第几个插入的数是几;3、删除堆顶的元素:用堆尾更新堆顶,从上往下更新;1、插入一个数:从数组末尾加数,从下往上更新。4、删除第k个结点,用尾结点更新第k位结点;小顶堆:每个点都小于等于左右结点。2、获取最小值:heap[1]4、down操作的时间复杂度。5、堆排序:输出前m个小的数。原创 2024-02-03 09:10:52 · 282 阅读 · 0 评论 -
第二章 数据结构 (二)(并查集、Trie树)
1、 用二维数组来构建一个树,第一维为结点下标,第二维为子节点,单个二维数组的值为子节点下标。构建字典树用于查询和插入。原创 2024-01-31 16:28:10 · 384 阅读 · 0 评论 -
第二章 数据结构(一)(数组模拟链表、队列,栈以及kmp)
1、单链表基础插入和删除操作2、双链表3、模拟栈和队列3、单调栈4、单调队列,求滑动窗口的最大值和最小值。原创 2024-01-31 09:15:55 · 408 阅读 · 1 评论 -
第一章 基础算法(三)(双指针、二进制、离散化)
1、运用某些性质 O(n^2)->O(n)原创 2024-01-28 12:01:00 · 281 阅读 · 0 评论 -
第一章 基础算法(一)
1、确定分界点 l、r 和(l+r)/2都可以2、划分区间,所有原创 2024-01-25 19:20:31 · 240 阅读 · 0 评论 -
第一章 基础算法(二)前缀和差分
差分和前缀和原创 2024-01-27 11:09:16 · 266 阅读 · 0 评论 -
第一章 基础算法(二)(高精度加减乘除)
【代码】第一章 基础算法(二)(高精度加减乘除)原创 2024-01-26 17:09:21 · 163 阅读 · 0 评论