02 2021 档案

摘要:2021-02-28:给定一个整型数组arr,和一个整数num。某个arr中的子数组sub,如果想达标,必须满足:sub中最大值 – sub中最小值 ⇐ num,返回arr中达标子数组的数量。 福哥答案2021-02-28: 采用两个双端队列,存序号。maxWindow从大到小,minWindow从 阅读全文
posted @ 2021-02-28 22:20 福大大架构师每日一题 阅读(222) 评论(1) 推荐(0) 编辑
摘要:2021-02-27:假设一个固定大小为W的窗口,依次划过arr,返回每一次滑出状况的最大值。例如,arr = [4,3,5,4,3,3,6,7], W = 3。返回:[5,5,5,4,6,7]。 福哥答案2021-02-27: 采用双端队列,存序号。遍历数组。 1.当双端队列里没值或者双端队列最右 阅读全文
posted @ 2021-02-27 23:00 福大大架构师每日一题 阅读(80) 评论(0) 推荐(0) 编辑
摘要:2021-02-26:一个数组arr是二叉树的中序遍历结果,每条边的开销是父节点和子节点的乘积,总开销是所有边的开销之和。请问最小总开销是多少? 链接:https://www.nowcoder.com/questionTerminal/0d939e874a004f449a370aca1346dd5c 阅读全文
posted @ 2021-02-26 22:18 福大大架构师每日一题 阅读(163) 评论(0) 推荐(0) 编辑
摘要:2021-02-25:给定一个正数数组arr,请把arr中所有的数分成两个集合。如果arr长度为偶数,两个集合包含数的个数要一样多;如果arr长度为奇数,两个集合包含数的个数必须只差一个。请尽量让两个集合的累加和接近,返回最接近的情况下,较小集合的累加和。 福哥答案2020-02-25: 自然智慧即 阅读全文
posted @ 2021-02-25 22:13 福大大架构师每日一题 阅读(165) 评论(0) 推荐(0) 编辑
摘要:2021-02-25:给定一个正数数组arr,请把arr中所有的数分成两个集合。如果arr长度为偶数,两个集合包含数的个数要一样多;如果arr长度为奇数,两个集合包含数的个数必须只差一个。请尽量让两个集合的累加和接近,返回最接近的情况下,较小集合的累加和。 福哥答案2020-02-25: 自然智慧即 阅读全文
posted @ 2021-02-25 22:02 福大大架构师每日一题 阅读(15) 评论(0) 推荐(0) 编辑
摘要:福哥答案2020-02-24: 自然智慧即可。 1.递归。有代码。 2.动态规划。dp是二维数组。有代码。 代码用golang编写,代码如下: package main import ( "fmt" ) func main() { arr := []int{1, 2, 3} aim := 8 ret 阅读全文
posted @ 2021-02-24 21:56 福大大架构师每日一题 阅读(157) 评论(0) 推荐(0) 编辑
摘要:2021-02-23:给定一个正数n,求n的裂开方法数。规定:后面的数不能比前面的数小 。比如4的裂开方法有: 1+1+1+1、1+1+2、1+3、2+2、4,5种,所以返回5。 福哥答案2021-02-23: 自然智慧即可。 1.递归。有代码。 2.动态规划。dp是二维数组。有代码。 3.动态规划 阅读全文
posted @ 2021-02-23 22:31 福大大架构师每日一题 阅读(157) 评论(0) 推荐(0) 编辑
摘要:2021-02-22:一个象棋的棋盘,然后把整个棋盘放入第一象限,棋盘的最左下角是(0,0)位置,那么整个棋盘就是横坐标上9条线、纵坐标上10条线的区域。给你三个 参数 x,y,k。返回“马”从(0,0)位置出发,必须走k步。最后落在(x,y)上的方法数有多少种? 福哥答案2021-02-22: 自 阅读全文
posted @ 2021-02-22 22:13 福大大架构师每日一题 阅读(176) 评论(0) 推荐(0) 编辑
摘要:2021-02-22:一个象棋的棋盘,然后把整个棋盘放入第一象限,棋盘的最左下角是(0,0)位置,那么整个棋盘就是横坐标上9条线、纵坐标上10条线的区域。给你三个 参数 x,y,k。返回“马”从(0,0)位置出发,必须走k步。最后落在(x,y)上的方法数有多少种? 福哥答案2021-02-22: 自 阅读全文
posted @ 2021-02-22 21:47 福大大架构师每日一题 阅读(13) 评论(0) 推荐(0) 编辑
摘要:2021-02-21:手写代码:高性能路由,也就是一个字符串和多个匹配串进行模糊匹配。一个数组arr里是["a","moonfdd"],字符串"moonfdd"能匹配到,理由是arr里有。字符串"xayy"也能匹配到,理由是arr里的"a",第1个星对应"x",第2个星对应"yy"。 福哥答案202 阅读全文
posted @ 2021-02-21 21:26 福大大架构师每日一题 阅读(112) 评论(0) 推荐(0) 编辑
摘要:2021-02-21:手写代码:高性能路由,也就是一个字符串和多个匹配串进行模糊匹配。一个数组arr里是[“a”,“moonfdd”],字符串"moonfdd"能匹配到,理由是arr里有。字符串"xayy"也能匹配到,理由是arr里的"a",第1个星对应"x",第2个星对应"yy"。 福哥答案202 阅读全文
posted @ 2021-02-21 21:08 福大大架构师每日一题 阅读(12) 评论(0) 推荐(0) 编辑
摘要:福哥答案2021-02-20: 四大方法:读加锁,读解锁,写加锁,写解锁。读加锁里有写加锁,读解锁里有写解锁。代码有写线程饥饿现象,但实现简单。 代码用golang编写,代码如下: package main import ( "fmt" "sync" "time" ) func main() { f 阅读全文
posted @ 2021-02-20 23:16 福大大架构师每日一题 阅读(89) 评论(0) 推荐(0) 编辑
摘要:2021-02-19:给定一个二维数组matrix,一个人必须从左上角出发,最后到达右下角。沿途只可以向下或者向右走,沿途的数字都累加就是距离累加和。请问最小距离累加和是多少? 福哥答案2021-02-19: 自然智慧即可。 一般会考虑dp[i][j]的右边和下边,谁小选谁,虽然你能确定下一步是最小 阅读全文
posted @ 2021-02-19 22:40 福大大架构师每日一题 阅读(398) 评论(0) 推荐(0) 编辑
摘要:2021-02-18:给定一个字符串str,给定一个字符串类型的数组arr,出现的字符都是小写英文。arr每一个字符串,代表一张贴纸,你可以把单个字符剪开使用,目的是拼出str来。返回需要至少多少张贴纸可以完成这个任务。例子:str= "babac",arr = {"ba","c","abcd"}。 阅读全文
posted @ 2021-02-18 22:53 福大大架构师每日一题 阅读(156) 评论(0) 推荐(0) 编辑
摘要:2021-02-18:给定一个字符串str,给定一个字符串类型的数组arr,出现的字符都是小写英文。arr每一个字符串,代表一张贴纸,你可以把单个字符剪开使用,目的是拼出str来。返回需要至少多少张贴纸可以完成这个任务。例子:str= “babac”,arr = {“ba”,“c”,“abcd”}。 阅读全文
posted @ 2021-02-18 22:33 福大大架构师每日一题 阅读(11) 评论(0) 推荐(0) 编辑
摘要:2021-02-17:规定1和A对应、2和B对应、3和C对应...26和Z对应,那么一个数字字符串比如"111”就可以转化为:"AAA"、"KA"和"AK"。给定一个只有数字字符组成的字符串str,请问有多少种转化结果? 福哥答案2021-02-17: 自然智慧即可。 1.递归。有代码。 2.动态规 阅读全文
posted @ 2021-02-17 20:32 福大大架构师每日一题 阅读(390) 评论(0) 推荐(0) 编辑
摘要:2021-02-17:规定1和A对应、2和B对应、3和C对应…26和Z对应,那么一个数字字符串比如"111”就可以转化为:“AAA”、“KA"和"AK”。给定一个只有数字字符组成的字符串str,请问有多少种转化结果? 福哥答案2021-02-17: 自然智慧即可。 1.递归。有代码。 2.动态规划。 阅读全文
posted @ 2021-02-17 20:21 福大大架构师每日一题 阅读(21) 评论(0) 推荐(0) 编辑
摘要:福哥答案2021-02-16: 自然智慧即可。1.普通递归。有代码。需要判断同列和斜线。2.位运算递归。有代码。3.我的递归。有代码。只需要判断斜线。 代码用golang编写,代码如下: package main import ( "fmt" "time" ) func main() { n := 阅读全文
posted @ 2021-02-16 21:59 福大大架构师每日一题 阅读(93) 评论(0) 推荐(0) 编辑
摘要:2021-02-15:给定一个整型数组arr,代表数值不同的纸牌排成一条线。玩家A和玩家B依次拿走每张纸牌,规定玩家A先拿,玩家B后拿。但是每个玩家每次只能拿走最左或最右的纸牌,玩家A和玩家B都绝顶聪明。请返回最后获胜者的分数。 福哥答案2021-02-15:这道题直接背,用自然智慧很难想到,平时需 阅读全文
posted @ 2021-02-15 21:58 福大大架构师每日一题 阅读(420) 评论(0) 推荐(0) 编辑
摘要:2021-02-15:给定一个整型数组arr,代表数值不同的纸牌排成一条线。玩家A和玩家B依次拿走每张纸牌,规定玩家A先拿,玩家B后拿。但是每个玩家每次只能拿走最左或最右的纸牌,玩家A和玩家B都绝顶聪明。请返回最后获胜者的分数。 福哥答案2021-02-15: 这道题直接背,用自然智慧很难想到,平时 阅读全文
posted @ 2021-02-15 21:47 福大大架构师每日一题 阅读(28) 评论(0) 推荐(0) 编辑
摘要:2021-02-14:假设有排成一行的N个位置,记为1~N,N 一定大于或等于 2,开始时机器人在其中的M位置上(M 一定是 1~N 中的一个)。如果机器人来到1位置,那么下一步只能往右来到2位置;如果机器人来到N位置,那么下一步只能往左来到 N-1 位置;如果机器人来到中间位置,那么下一步可以往左 阅读全文
posted @ 2021-02-14 22:08 福大大架构师每日一题 阅读(331) 评论(0) 推荐(0) 编辑
摘要:2021-02-14:假设有排成一行的N个位置,记为1~N,N 一定大于或等于 2,开始时机器人在其中的M位置上(M 一定是 1~N 中的一个)。如果机器人来到1位置,那么下一步只能往右来到2位置;如果机器人来到N位置,那么下一步只能往左来到 N-1 位置;如果机器人来到中间位置,那么下一步可以往左 阅读全文
posted @ 2021-02-14 21:56 福大大架构师每日一题 阅读(22) 评论(0) 推荐(0) 编辑
摘要:福哥答案2020-02-13: 假设字符串str是“abcde12344321”,在str后添加“edcba”即可变成回文串。需要添加5个字符。 解法:包含最后一个字符的manacher算法算出长度,然后str的总长度减去manacher长度,就是需要添加的字符个数。 代码用golang编写,代码如 阅读全文
posted @ 2021-02-13 21:42 福大大架构师每日一题 阅读(322) 评论(0) 推荐(0) 编辑
摘要:2021-02-12:如何判断两个字符串是否互为旋转字符串? 福哥答案2021-02-12: 假设字符串str1是“ABCDE”,字符串str2是“CDEAB”。字符串str2可以拆分成“CDE”和“AB”,可以拼成“ABCDE”。所以str1和str2互为旋转字符串。 解法:1.判断str1和st 阅读全文
posted @ 2021-02-12 20:41 福大大架构师每日一题 阅读(135) 评论(0) 推荐(0) 编辑
摘要:福哥答案2021-02-11: 举例:"moonfudadayx"和"mfyudadxxax",最大公共子序列是"mfudadax",长度是8。 自然智慧即可。1.递归。有代码。三种情况。右移 右移;右移 不移;不移 右移。2.动态规划。有代码。dp[i][j]依赖左边,上边,左上边。①.如果str 阅读全文
posted @ 2021-02-11 22:58 福大大架构师每日一题 阅读(106) 评论(0) 推荐(0) 编辑
摘要:2021-02-10:如何求出两个字符串的最大公共子串长度? 福哥答案2021-02-10: 自然智慧即可。1.动态规划。时间复杂度是O(M*N),空间复杂度是O(M*N)。有代码。dp[i][j]只依赖左上边。①.如果str1[i]==str2[j],dp[i][j]=【左上边】+1。②.如果st 阅读全文
posted @ 2021-02-10 16:52 福大大架构师每日一题 阅读(104) 评论(0) 推荐(0) 编辑
摘要:2021-02-09:如何删除一个链表的倒数第n个元素? 福哥答案2021-02-09: 1.创建虚拟头元素,虚拟头元素的Next指针指向头元素。2.根据快慢指针求倒数第n+1个元素,假设这个元素是slow。3.设置元素slow的Next指针。slow.Next=slow.Next.Next。4.返 阅读全文
posted @ 2021-02-09 22:02 福大大架构师每日一题 阅读(90) 评论(0) 推荐(0) 编辑
摘要:2021-02-08:给定一个字符串str,请问这个字符串的最长回文子序列长度是多少? 福哥答案2021-02-08: 自然智慧即可。1.原序列和反序列求公共子序列。无代码。2.递归。有代码。3.动态规划。有代码。根据动态规划表,dp[i][j]取【左边】,【下边】,【左下边】或者【左下边+2】)的 阅读全文
posted @ 2021-02-08 22:32 福大大架构师每日一题 阅读(88) 评论(0) 推荐(0) 编辑
摘要:福哥答案2021-02-07: 对head1和head2序列化为str1和str2。然后用kmp算法去判断str2是否是str1的子串。如果是,head2是子树;如果不是,head2不是子树。 代码用golang编写,代码如下: package main import "fmt" func main 阅读全文
posted @ 2021-02-07 21:40 福大大架构师每日一题 阅读(102) 评论(0) 推荐(0) 编辑
摘要:福哥答案2021-02-06: 1.动态规划。无代码,见图。2.中心扩展法。无代码。3.Manacher算法。有代码,见图。1)理解回文半径数组。2)理解所有中心的回文最右边界R,和取得R时的中心点C。3)理解 L…(i`)…C…(i)…R 的结构,以及根据i’回文长度进行的状况划分。4)每一种情况 阅读全文
posted @ 2021-02-06 21:19 福大大架构师每日一题 阅读(84) 评论(0) 推荐(0) 编辑
摘要:2021-02-05:给定一个数N,想象只由0和1两种字符,组成的所有长度为N的字符串。如果某个字符串,任何0字符的左边都有1紧挨着,认为这个字符串达标。请问有多少达标的字符串? 福哥答案2021-02-05:举例:N=6[1 0 1 0 1 0][1 0 1 0 1 1][1 0 1 1 0 1] 阅读全文
posted @ 2021-02-05 22:12 福大大架构师每日一题 阅读(829) 评论(0) 推荐(0) 编辑
摘要:2021-02-04:第一年农场有1只成熟的母牛A,往后的每年:①每一只成熟的母牛都会生一只母牛 ②每一只新出生的母牛都在出生的第三年成熟 ③每一只母牛永远不会死 。请问N年后牛的数量是多少 ?福哥答案2021-02-04: 举例:N=6,第1年1头成熟母牛记为a; 第2年a生了新的小母牛,记为b, 阅读全文
posted @ 2021-02-04 21:42 福大大架构师每日一题 阅读(177) 评论(0) 推荐(0) 编辑
摘要:福哥答案2021-02-03: Knuth-Morris-Pratt 字符串查找算法,简称为 KMP算法,常用于在一个文本串 S 内查找一个模式串 P 的出现位置。这个算法由 Donald Knuth、Vaughan Pratt、James H. Morris 三人于 1977 年联合发表,故取这 阅读全文
posted @ 2021-02-03 21:37 福大大架构师每日一题 阅读(97) 评论(0) 推荐(0) 编辑
摘要:福哥答案2021-02-02: 双指针我们可以枚举字符串中的每一个位置作为右端点,然后找到其最远的左端点的位置,满足该区间内除了出现次数最多的那一类字符之外,剩余的字符(即非最长重复字符)数量不超过 kk 个。 这样我们可以想到使用双指针维护这些区间,每次右指针右移,如果区间仍然满足条件,那么左指针 阅读全文
posted @ 2021-02-02 21:10 福大大架构师每日一题 阅读(65) 评论(0) 推荐(0) 编辑
摘要:福哥答案2021-02-01: 以下情况可能导致写操作丢失:1、过期 key 被清理。2、最大内存不足,导致 Redis 自动清理部分 key 以节省空间。3、主库故障后自动重启,从库自动同步。4、单独的主备方案,网络不稳定触发哨兵的自动切换主从节点,切换期间会有数据丢失。***[评论](https 阅读全文
posted @ 2021-02-01 21:46 福大大架构师每日一题 阅读(160) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示