会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
passawayy
博客园
首页
新随笔
联系
订阅
管理
2021年7月28日
FFT
摘要: 例题1:力 可以把题目给的式子转化为卷积的形式,然后通过FFT可以求得(推公式过程待补) //#include<bits/stdc++.h> #include<cstdio> #include<cmath> #include<iostream> #include<algorithm> #includ
阅读全文
posted @ 2021-07-28 20:19 passawayy
阅读(45)
评论(0)
推荐(0)
2021年6月13日
最优前缀码
摘要: 1.问题 给定字符集C={x1,x2,...xn}和每个字符的频率f(xi),求关于C的最优前缀码 2.解析 构造最优前缀码的贪心算法就是哈夫曼编码。 下面给出证明哈夫曼编码是求解最优前缀码的其中一种解法。 引理1:给定字符集C={x1,x2,..xn}以及每个字符的频率f(xi),以此来构造哈夫曼
阅读全文
posted @ 2021-06-13 16:09 passawayy
阅读(794)
评论(0)
推荐(0)
2021年6月12日
矩阵链乘法
摘要: 1.问题 设A1,A2,A3.......An为n个矩阵的序列,其中Ai为pi-1*pi阶矩阵,这个矩阵链的输入用向量p=<p0,p1,p2,....pn>给出。 给董向量p,确定一种乘法的次序,使得基本运算的总次数达到最小。 2.解析 假设给定序列p=<100,10,20,5,100> 则A1=1
阅读全文
posted @ 2021-06-12 21:18 passawayy
阅读(71)
评论(0)
推荐(0)
2021年5月31日
图的m染色问题
摘要: 1.问题 给定无向连通图G和m种颜色,用这种颜色给图的顶点染色,每个顶点一种颜色。 如果要求G的每条边的两个顶点的颜色不相通同。如果存在, 给出所有可能的着色方案;如果不存在,则回答NO 2.解析 可以利用递归调用的思想,递归的去尝试填每一个点的颜色,再去判断当前的颜色是否符合情况, 如果符合情况就
阅读全文
posted @ 2021-05-31 16:00 passawayy
阅读(140)
评论(0)
推荐(0)
2021年5月17日
装载问题(01背包)
摘要: 1.问题 2.解析 思路:背包(dp) 也就是最朴素的01背包问题 dp[j]就表示当下表为j的时候所能装载 的最大数量,可以得到dp的状态转移方程dp[j]=max(dp[j],dp[j-a[i]]+1);(i从1~n 也就是所有的物品) 思路:贪心 想法:每次都选择重量最小的添加到其中 3.设计
阅读全文
posted @ 2021-05-17 15:54 passawayy
阅读(102)
评论(0)
推荐(0)
2021年5月10日
LCS和背包
摘要: 1.问题 DP问题之LCS和背包 2.解析 LCS(最长上升子序列): 背包: 3.设计 背包: LCS: 4.分析 LCS的时间复杂度为O(n*m) (n、m分别为两个串的长度) 背包的时间复杂度为O(n*m) (n、m分别为物品的个数和背包的容量) 5.源码 Github
阅读全文
posted @ 2021-05-10 16:19 passawayy
阅读(52)
评论(0)
推荐(0)
2021年4月25日
投资问题
摘要: 1.问题 设 m 万元钱,n 项投资,f(x)函数 表示将 x 万元投入第 i 项项目所产 生的效益,i=1,2,…,n.问:如何分配这 m 元钱,使得投资的总效益最高? 2.解析 状态转移方程为dp[i]=max(dp[i],dp[i-w]+a[w]) 假设w为花费,a[w]数组为花费w得到的效益
阅读全文
posted @ 2021-04-25 16:03 passawayy
阅读(68)
评论(0)
推荐(0)
2021年4月19日
寻找第K小的数(分治)
摘要: 1.问题 给你一个无序序列,找到序列中第k大的数字 2.解析 类似于快速排序,我这里将第一个作为参考系,可以轻松的得知第一个数在整个序列中是第几大,得到cnt,在这期间随便将序列分为两部分。 如果cnt<k 那么使得查找的范围缩小一半,那么就去后半段去查找,否则的话去前半段去查找。 3.设计 4.分
阅读全文
posted @ 2021-04-19 16:01 passawayy
阅读(296)
评论(0)
推荐(0)
2021年4月12日
归并排序
摘要: 1.问题 将一个无序序列通过算法使之成为一个有序序列。 2.解析 归并排序的核心思想就是分治。 就是把一个大的问题分成若干小部分,再把小部分分解成更小的部分,直到小问题的规模可以解决然后,将所有的小问题的答案进行相应的处理得到答案。 对于归并排序的算法来说就是,将原先长度为n,分成两个n/2的长度,
阅读全文
posted @ 2021-04-12 18:04 passawayy
阅读(59)
评论(0)
推荐(0)
最近对问题
摘要: 1.问题 在平面内,找出欧几里得距离最小的值。 2.解析 暴力求解的复杂度为O(n^2),所以我们可以利用分治的思想,降低时间复杂度。 将所有的点都按照一个顺序去进行排序,然后这所有的点分成两部分。 求的左边的最小值,和右边的最小值,当然有时候最小值出现在两侧 令ans=min(ans(left),
阅读全文
posted @ 2021-04-12 15:15 passawayy
阅读(73)
评论(0)
推荐(0)
下一页
公告