最新 最热

每日一刷《剑指offer》字符串篇之正则表达式匹配

在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab_ac_a"匹配,但是与"aa.a"和"ab*a"均不匹配...

2023-11-20
2

常见动态规划类型--案例详解

动态规划的核心思想是将原问题拆解成子问题,并通过解决子问题来求解原问题。为了避免重复计算,动态规划会将子问题的解进行存储,在需要的时候直接获取,从而提高效率。...

2023-11-18
2

410. 分割数组的最大值

Given an array nums which consists of non-negative integers and an integer m, you can split the array into m non-empty continuous subarrays.

2023-11-18
1

数据结构与算法 | 动态规划算法(Dynamic Programming)

上一篇文末已经提到了记忆化搜索是动态规划(Dynamic Programming)的一种形式,是一种自顶向下(Top-Down)的思考方式,通常采用递归的编码形式;既然动态规划有自顶向下(Top-Down)的递归形式,自然想到对应的另外一种思考方式自底向...

2023-11-16
3

【第008题】题解及代码分享:记忆化搜索挂了,数位DP[ZJOI2010] 数字计数

给定两个正整数 a 和 b,求在 [a,b] 中的所有整数中,每个数码(digit)各出现了多少次。

2023-11-14
1

【第007题】题解及代码分享:数位DP经典模版题 [SCOI2009] windy 数

不含前导零且相邻两个数字之差至少为 2 的正整数被称为 windy 数。windy 想知道,在 a 和 b 之间,包括 a 和 b ,总共有多少个 windy 数?

2023-11-14
1

数据结构与算法 | 记忆化搜索(Memorize Search)

在本系列的文章中已经写了二叉树(Binary Tree)、深搜(DFS)与广搜(BFS)、哈希表(Hash Table)等等,计划接下来要写的是动态规划(Dynamic Programming,DP),它算得上是最灵活的一种算法。回忆笔者学习动态规划的时候,最开始接触的是经...

2023-11-13
3

【第006题】题解及代码分享:高位前缀和之AtCoder ARC100 - E Or Plus Max

给你一个长度为 的序列 a,每个,找出最大的a_i+a_j(i or j ≤K,0≤i<j<2^n)

2023-11-09
1

精读《算法题 - 二叉树中的最大路径和》

二叉树中的 路径 被定义为一条节点序列,序列中每对相邻节点之间都存在一条边。同一个节点在一条路径序列中 至多出现一次 。该路径 至少包含一个 节点,且不一定经过根节点。...

2023-11-06
1

Python 算法高级篇:多阶段决策问题与状态转移方程的构建

多阶段决策问题是一类在不同决策阶段需要做出一系列决策以实现特定目标的问题。这类问题涵盖了许多实际应用,如项目管理、资源分配、生产计划等。解决多阶段决策问题的一种常见方法是使用动态规划。在本篇博客中,我们将...

2023-11-02
1