![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 95
funkiz
这个作者很懒,什么都没留下…
展开
-
递归之N皇后问题
问题描述:给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。如"abc"有三个回文子串‘a’,‘b’,'c在这里插入图片描述(x−x1)x2−x1\frac{(x-x1)}{x2-x1}x2−x1(x−x1)示例 1:输入:“abc”输出:3解释:三个回文子串: “a”, “b”, “c”示例 2:输入:“aaa”输出:6解释:6个回文子串: “a”, “a”, “a”, “aa”, “aa”原创 2021-03-27 12:33:11 · 2247 阅读 · 2 评论 -
二叉树题集(持续更新中)
对于二叉搜索树,我们规定任一结点的左子树仅包含严格小于该结点的键值,而其右子树包含大于或等于该结点的键值。1. 求二叉搜索树最大深度输入格式:输入给出一行整数序列作为二叉搜索树的键值,数字间以空格分隔,输入0结束(0不计入该二叉树键值)。输入样例:8 6 8 5 10 9 11 0输出样例:4常规的求二叉搜索树深度的做法是递归到叶子结点往上求深度,对每个父节点求其左右子树的最大深度,即private int deep(TreeNode node) { if (nod原创 2020-09-20 01:15:54 · 249 阅读 · 0 评论 -
动态规划之马拉车算法(Python解法)
问题描述:给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。如"abc"有三个回文子串‘a','b','c'.本篇文章主要介绍我个人对马拉车算法实现思路的一些想法,原题解请看leetcode-647.回文子串中心拓展法对于这个问题,简单的做法是枚举字符串中的每个子串,然后判断子串中回文串的个数。由于回文串有对称性这一特点,每个回文串必然存在一个对称中心。我们便可以将字符串中每个字符或两个字符原创 2020-08-20 04:01:45 · 1154 阅读 · 0 评论 -
完全背包问题
问题描述有n种物品和一个容量为c的背包,每种物品都就可以选择任意多个,第i种物品的价值为v[i],体积为w[i],求解:在不超过背包容量的情况下,选择放入哪些物品能够使得背包中的价值最大?跟01背包一样,完全背包也是一个很经典的动态规划问题,不同的地方在于01背包问题中,每件物品最多选择一件;而在完全背包问题中,只要背包装得下,每件物品可以选择任意多件。从每件物品的角度来说,与之相关的策略已经不再是选或者不选了,而是有取0件、取1件、取2件...直到取⌊c/wi⌋(向下取整)件。在上一篇文章转载 2020-08-12 21:24:25 · 847 阅读 · 0 评论 -
基于01背包问题的动态规划算法
正在努力编辑中转载 2020-08-12 00:31:59 · 3282 阅读 · 3 评论 -
初步了解01背包问题(分治篇)
问题描述Coda非常喜欢玩“NewWorld Online”,受到某部动画的影响,他决定创建名为“梅普露”的角色,并把所有技能点都加到防御力上。Coda发现了一个包含了n行数据的列表,表上每行有一组数据,包含两个整数ai 和bi,决定了第i次点技能时消耗ai 点技能点,提升bi点属性值。Coda在加点时可以从列表中选择喜欢的一组数据作为加点时的消耗和提升,但是每组数据使用过一次就不能再次使用了。Coda现在拥有pp个技能点,初始防御力为dd,请问如果Coda把这些技能点全拿来加防御..原创 2020-08-12 00:46:15 · 5180 阅读 · 0 评论 -
基于活动选择问题的贪心算法
问题描述:Coda从0时刻开始观看直播,到tt时刻结束。一共有n场直播可被选择,已知所有直播场次的起止时间和主播名称,其中第i场直播从ai时刻开始,bi时刻结束,主播名称为ci,每场直播的起始时间和结束时间都是整点(不保证所有直播全程都在Coda观看的时间段内)。Coda同时只能观看一场直播,并且必须看完正在观看的直播,才能选择下一场尚未开始的直播。请求出Coda在这段时间内最多能观看几场直播,并按照观看顺序输出观看的每个主播的名称。输入格式第一行包含两个整数nn和tt,分别表示已原创 2020-08-10 20:20:49 · 1768 阅读 · 0 评论