会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Loading
幻梦翱翔
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
8
9
10
下一页
2022年3月28日
数组中的最长连续序列
摘要: 数组中的最长连续序列 题目:数组中的最长连续子序列 《程序员代码面试指南》第75题 P248 难度:尉★★☆☆ 这题我一上来想到先排序再找最长序列,不过就算使用最快的排序算法,时间复杂度也达到了O(NlogN),不符合题目要求的O(N)。 介绍两种解法: 首先是书中使用哈希表的解法: 生成哈希表ma
阅读全文
posted @ 2022-03-28 20:05 幻梦翱翔
阅读(111)
评论(0)
推荐(0)
2022年3月26日
数字字符串转换为字母组合的种数
摘要: 数字字符串转换为字母组合的种数 题目:数字字符转化为字母组合的种数 《程序员代码面试指南》第71题 P238 难度:尉★★☆☆ 这题不算很难,很快想出来,一个for循环了事,不过有些难理解。 我的思路是,假设数字字符串为“XXX...XXX”,那么“XXX...XXX”转换为字母组合的总数(记为p(
阅读全文
posted @ 2022-03-26 12:02 幻梦翱翔
阅读(192)
评论(0)
推荐(0)
2022年3月23日
最小编辑代价
摘要: 最小编辑代价 题目:最小编辑代价 《程序员代码面试指南》第68题 P230 难度:校★★★☆ 同样分为经典动态规划和经典动态规划结合空间压缩两种方法。 经典动态规划方法: 同样建立二维动态规划表,大小为(M+1)×(N+1)的矩阵dp,dp[i][j]的值代表str1[0..i-1]编辑成str2[
阅读全文
posted @ 2022-03-23 19:47 幻梦翱翔
阅读(50)
评论(0)
推荐(0)
2022年3月15日
最长公共子序列问题 & 最长公共子串问题
摘要: 最长公共子序列问题 题目:最长公共子序列 《程序员代码面试指南》第65题 P220 难度:尉★★☆☆ 本题是非常经典的动态规划问题,先来介绍求解动态规划表的过程。如果str1的长度为M,str2的长度为N,生成大小为M×N的矩阵dp。dp[i][j]的含义是str1[0..i]与str2[0..j]
阅读全文
posted @ 2022-03-15 16:17 幻梦翱翔
阅读(84)
评论(0)
推荐(0)
2022年3月13日
最长递增子序列
摘要: 最长递增子序列 题目:最长递增子序列 《程序员代码面试指南》第62题 P210 难度:校★★★☆ 首先是时间复杂度为O(N2)的方法。 生成长度为N的数组dp,dp表示在以arr[i]这个数结尾的情况下,arr[0..i]中的最大递增子序列长度。 对第一个数arr[0]来说,令dp[0]=1,接下来
阅读全文
posted @ 2022-03-13 16:40 幻梦翱翔
阅读(76)
评论(0)
推荐(0)
2022年3月2日
动态规划套路题:机器人达到指定位置方法数 & 换钱最少的货币数 & 换钱的方法数 & 打气球的最大分数
摘要: 机器人达到指定位置方法数 题目:机器人达到指定位置方法数 《程序员代码面试指南》第59题 P192 难度:尉★★☆☆ 书上题目顺序安排极不合理,这题应该放在上一题的前面。上一题没做出来,大致看了下解析,对这题有一定启发,很快想出来了。 主要介绍一下本题提出的“用暴力递归解决的方法如何优化成动态规划”
阅读全文
posted @ 2022-03-02 11:16 幻梦翱翔
阅读(64)
评论(0)
推荐(0)
2022年2月25日
矩阵的最小路径和
摘要: 矩阵的最小路径和 题目:矩阵的最小路径和 《程序员代码面试指南》第57题 P185 难度:尉★★☆☆ 本题看了迪杰斯特拉算法受到了启发,才想出来了。还是太菜了…… 经典动态规划方法: 简单来说,就是生成和原矩阵一样大小的矩阵dp,dp[i][j]的值表示从(0,0)位置走到(i,j)位置的最小路径和
阅读全文
posted @ 2022-02-25 13:17 幻梦翱翔
阅读(134)
评论(0)
推荐(0)
2022年2月24日
斐波那契数列问题的递归和动态规划
摘要: 斐波那契数列问题的递归和动态规划 题目:斐波那契数 & 爬楼梯 & 斐波那契数列问题的递归和动态规划3 《程序员代码面试指南》第56题 P179 难度:将★★★★ 这三个问题本质上都是斐波那契数列的问题。 首先是基本的斐波那契数问题。一共有三种解法。 第一种时间复杂度为O(2N),即暴力递归。(也是
阅读全文
posted @ 2022-02-24 17:03 幻梦翱翔
阅读(170)
评论(0)
推荐(0)
2022年2月23日
调整搜索二叉树中的两个错误的节点 & 统计完全二叉树的节点数
摘要: 调整搜索二叉树中的两个错误的节点 题目:找到搜索二叉树中两个错误的节点 《程序员代码面试指南》第41题 P137 难度:尉★★☆☆ (只看原问题,进阶问题难度将,解答不可能看的懂) 如果没有错误节点,那么搜索二叉树的中序遍历的节点值是一直升序的。如果有两个节点位置错了,就一定会出现降序。 出现降序有
阅读全文
posted @ 2022-02-23 10:47 幻梦翱翔
阅读(68)
评论(0)
推荐(0)
2022年2月20日
统计和生成所有不同的二叉树 & 通过先序和中序数组生成后序数组
摘要: 统计和生成所有不同的二叉树 题目:不同的二叉搜索树 & 不同的二叉搜索树 II 《程序员代码面试指南》第54题 P173 难度:尉★★☆☆ 原问题只是统计二叉树的数量。 首先,如果中序遍历有序且无重复值,则二叉树必为搜索二叉树。 假设num(a)代表a个节点的搜索二叉树有多少种可能。再假设序列为{1
阅读全文
posted @ 2022-02-20 12:13 幻梦翱翔
阅读(47)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
8
9
10
下一页
公告