算法与数据结构
文章平均质量分 93
算法与数据结构基础、提升、进阶。
松东路
专注技术
展开
-
算法与数据结构-并查集
并查集的初始化并查集的Get操作并查集的Merge操作关键词: “扩展域”与“边带权”X-Plosives - UVA 1160 - Virtual Judge (vjudge.net)Corporative NetworkCCO Preparation Test 5 P2 - Corporative Network - DMOJ ccoprep5p2 - Virtual Judge (vjudge.net)P1955 [NOI2015] 程序自动分析[P1955 NOI2015] 程序原创 2022-06-28 20:51:02 · 580 阅读 · 0 评论 -
算法与数据结构-位运算
求a^b对m取模思路 : 快速幂Raising Modulo Numbers - POJ 1995 - Virtual Judge (vjudge.net)类似题 : 剑指 Offer 16. 数值的整数次方 - 力扣(LeetCode)最短Hamilton路径91. 最短Hamilton路径 - AcWing题库暴力枚举时间复杂度O(n*n!)思路:二进制状态压缩 O(n2*2n)起床困难综合症[P2114 NOI2014] 起床困难综合症 - 洛谷 | 计算机科学教育新生态 (luogu.co原创 2022-06-30 16:31:55 · 246 阅读 · 1 评论 -
算法与数据结构-思维体操
Dragon of Loowater - UVA 11292 - Virtual Judge (vjudge.net)Description思路:能力强的骑士开价高是合理的,但如果被你派去砍一个很弱的头,就是浪费人才了。因此,可以把雇佣来的骑士按照能力从小到大排序,所有头按照直径从小到大排序,一个一个砍就可以了。当然,不能砍掉“当前需要砍的头”的骑士就不要雇佣了。突击战Commando War - UVA 11729 - Virtual Judge (vjudge.net)Description思路:直原创 2022-06-27 17:45:27 · 216 阅读 · 0 评论 -
算法与数据结构-动态规划
求解斐波那契数列的递归算法计算过程中存在大量的重复计算为此避免重复设计,设计一个dp数组,dp[i]存放Fib(i)的值,首先设置dp[1]和dp[2]均为1,再让i从3到n循环以计算dp[3]到dp[n]的值,最后返回dp[n]即Fib1(n)。对应的算法1如下:执行Fib1(5)时的输出结果如下:(1)计算出Fib1(1)=1(2)计算出Fib1(2)=1(3)计算出Fib1(3)=2(4)计算出Fib1(4)=3(5)计算出Fib1(5)=5其执行过程改变为自底向上,即先求出子问题解,将计算结果存放原创 2022-06-07 16:34:27 · 970 阅读 · 0 评论 -
算法与数据结构-贪心法
贪心法的基本思路是在对问题求解时总是做出在当前看来是最好的选择,也就是说贪心法不从整体最优上加以考虑,所做出的仅是在某种意义上的局部最优解。 人们通常希望找到整体最优解,所以采用贪心法需要证明设计的算法确实是整体最优解或求解了它要解决的问题。1 贪心选择性质所谓贪心选择性质是指所求问题的整体最优解可以通过一系列局部最优的选择,即贪心选择来达到。也就是说,贪心法仅在当前状态下做出最好选择,即局部最优选择,然后再去求解做出这个选择后产生的相应子问题的解。2 最优子结构性质原创 2022-06-06 15:16:53 · 1534 阅读 · 0 评论 -
算法与数据结构-分支限界法
分枝限界法类似于回溯法,也是一种在问题的解空间树上搜索问题解的算法。 但在一般情况下,分枝限界法与回溯法的求解目标不同。回溯法的求解目标是找出解空间树中满足约束条件的所有解,而分枝限界法的求解目标则是找出满足约束条件的一个解,或是在满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。所谓“分枝”就是采用广度优先的策略,依次搜索活结点的所有分枝,也就是所有相邻结点。求最优解时,选择哪一个子结点? 采用一个限界函数,计算......原创 2022-06-06 15:14:03 · 2721 阅读 · 0 评论 -
算法与数据结构-回溯法
一个复杂问题的解决方案是由若干个小的决策步骤组成的决策序列,解决一个问题的所有可能的决策序列构成该问题的解空间。应用回溯法求解问题时,首先应该明确问题的解空间。解空间中满足约束条件的决策序列称为可行解。一般来说,解任何问题都有一个目标,在约束条件下使目标达到最优的可行解称为该问题的最优解。问题的解由一个不等长或等长的解向量X={x1,x2,…,xn}组成,其中分量xi表示第i步的操作。 所有满足约束条件的解向量组构成了问题的解空间。 问题的解空间一般用树形式来组织,也称为..原创 2022-06-05 20:46:26 · 1651 阅读 · 0 评论 -
算法与数据结构-分治法
对于一个规模为n的问题:若该问题可以容易地解决(比如说规模n较小)则直接解决,否则将其分解为k个规模较小的子问题,这些子问题互相独立且与原问题形式相同,递归地解这些子问题,然后将各子问题的解合并得到原问题的解。这种算法设计策略叫做分治法。.........原创 2022-06-05 20:42:25 · 1385 阅读 · 0 评论 -
算法与数据结构-递归
递归算法设计技术原创 2022-06-05 20:32:11 · 1601 阅读 · 0 评论