会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
kent
内心强大
博客园
首页
新随笔
联系
订阅
管理
2019年3月15日
算法进阶面试题07——求子数组的最大异或和(前缀树)、换钱的方法数(递归改dp最全套路解说)、纸牌博弈、机器人行走问题
摘要: 主要讲第五课的内容前缀树应用和第六课内容暴力递归改动态规划的最全步骤 第一题 给定一个数组,求子数组的最大异或和。 一个数组的异或和为,数组中所有的数异或起来的结果。 简单的前缀树应用 暴力方法: 先计算必须以i结尾的子数组的异或和,然后再计算机i+1的,以此类推... 最暴力的解 怎么优化? 异或
阅读全文
posted @ 2019-03-15 10:09 kent鹏
阅读(1208)
评论(0)
推荐(0)
2019年3月7日
算法进阶面试题06——实现LFU缓存算法、计算带括号的公式、介绍和实现跳表结构
摘要: 接着第四课的内容,主要讲LFU、表达式计算和跳表 第一题 上一题实现了LRU缓存算法,LFU也是一个著名的缓存算法 自行了解之后实现LFU中的set 和 get 要求:两个方法的时间复杂度都为O(1) LFU根据get、set操作次数决定的优先级。 同样次数,最不经常访问的先出去。 实现思路:建立一
阅读全文
posted @ 2019-03-07 11:15 kent鹏
阅读(1124)
评论(0)
推荐(0)
2019年3月5日
算法进阶面试题05——树形dp解决步骤、返回最大搜索二叉子树的大小、二叉树最远两节点的距离、晚会最大活跃度、手撕缓存结构LRU
摘要: 接着第四课的内容,加入部分第五课的内容,主要介绍树形dp和LRU 第一题: 给定一棵二叉树的头节点head,请返回最大搜索二叉子树的大小 二叉树的套路 统一处理逻辑:假设以每个节点为头的这棵树,他的最大搜索二叉子树是什么。答案一定在其中 第一步,列出可能性(最难部分) 1、可能来自左子树上的某课子树
阅读全文
posted @ 2019-03-05 17:59 kent鹏
阅读(837)
评论(0)
推荐(0)
2019年2月26日
算法进阶面试题04——平衡二叉搜索树、AVL/红黑/SB树、删除和调整平衡的方法、输出大楼轮廓、累加和等于num的最长数组、滴滴Xor
摘要: 接着第三课的内容和讲了第四课的部分内容 1、介绍二叉搜索树 在二叉树上,何为一个节点的后继节点? 何为搜索二叉树? 如何实现搜索二叉树的查找?插入?删除? 二叉树的概念上衍生出的。 任何一个节点,左比他小,右比他大。标准搜索二叉树是没有重复值的。 TreeMap就是搜索二叉树,key是有序组织起来的
阅读全文
posted @ 2019-02-26 10:39 kent鹏
阅读(2315)
评论(1)
推荐(0)
2019年2月21日
算法进阶面试题03——构造数组的MaxTree、最大子矩阵的大小、2017京东环形烽火台问题、介绍Morris遍历并实现前序/中序/后序
摘要: 接着第二课的内容和带点第三课的内容。 (回顾)准备一个栈,从大到小排列,具体参考上一课.... 构造数组的MaxTree 【题目】 定义二叉树如下: public class Node{ public int value; public Node left; public Node right; p
阅读全文
posted @ 2019-02-21 11:59 kent鹏
阅读(959)
评论(0)
推荐(0)
2019年2月14日
算法进阶面试题02——BFPRT算法、找出最大/小的K个数、双向队列、生成窗口最大值数组、最大值减最小值小于或等于num的子数组数量、介绍单调栈结构(找出临近的最大数)
摘要: 第二课主要介绍第一课余下的BFPRT算法和第二课部分内容 1、BFPRT算法详解与应用 找到第K小或者第K大的数。 普通做法:先通过堆排序然后取,是n*logn的代价。 基于荷兰国旗问题,可以实现o(N)的代价。 每次都分小于等于大于区域,再判断是拿大于区域还是小于区域继续划分,等于的话就直接出答案
阅读全文
posted @ 2019-02-14 11:21 kent鹏
阅读(984)
评论(0)
推荐(0)
2019年2月11日
算法进阶面试题01——KMP算法详解、输出含两次原子串的最短串、判断T1是否包含T2子树、Manacher算法详解、使字符串成为最短回文串
摘要: 1、KMP算法详解与应用 子序列:可以连续可以不连续。 子数组/串:要连续 暴力方法:逐个位置比对。 KMP:让前面的,指导后面。 概念建设: d的最长前缀与最长后缀的匹配长度为3。(前缀不能到最后一个,后缀也不能到第一个) 先计算出str2的全部匹配信息。 一路相等,直到X与Y不匹配,根据X位置的
阅读全文
posted @ 2019-02-11 11:48 kent鹏
阅读(1003)
评论(1)
推荐(0)
2019年2月6日
算法初级面试题08——递归和动态规划的精髓、阶乘、汉诺塔、子序列和全排列、母牛问题、逆序栈、最小的路径和、数组累加成指定整数、背包问题
摘要: 第八课主要介绍递归和动态规划 第八课主要介绍递归和动态规划 介绍递归和动态规划 暴力递归: 1,把问题转化为规模缩小了的同类问题的子问题 2,有明确的不需要继续进行递归的条件(base case) 3,有当得到了子问题的结果之后的决策过程 4,不记录每一个子问题的解 动态规划 1,从暴力递归中来 2
阅读全文
posted @ 2019-02-06 23:49 kent鹏
阅读(1131)
评论(0)
推荐(0)
2019年2月3日
算法初级面试题07——前缀树应用、介绍和证明贪心策略、拼接字符串得到最低字典序、切金条问题、项目收益最大化问题、随时取中位数、宣讲会安排
摘要: 第六课主要介绍图,不经常考,故今天先讲第七课的内容,介绍比较常考的树和贪心算法 第六课主要介绍图,不经常考,故今天先讲第七课的内容,介绍比较常考的树和贪心算法 介绍前缀树 何为前缀树? 如何生成前缀树? 可以查有多少个字符串以“be”为前缀。 如果要判断有没有“be”这个节点,每个节点上加上一个数据
阅读全文
posted @ 2019-02-03 10:58 kent鹏
阅读(955)
评论(0)
推荐(0)
2019年1月28日
算法初级面试题05——哈希函数/表、生成多个哈希函数、哈希扩容、利用哈希分流找出大文件的重复内容、设计RandomPool结构、布隆过滤器、一致性哈希、并查集、岛问题
摘要: 今天主要讨论:哈希函数、哈希表、布隆过滤器、一致性哈希、并查集的介绍和应用。 今天主要讨论:哈希函数、哈希表、布隆过滤器、一致性哈希、并查集的介绍和应用。 题目一 题目一 认识哈希函数和哈希表 1、输入无限大 2、输出有限的S集合 3、输入什么就输出什么 4、会发生哈希碰撞 5、会均匀分布,哈希函数
阅读全文
posted @ 2019-01-28 11:36 kent鹏
阅读(1334)
评论(0)
推荐(0)
下一页
公告