8.剖析大厂算法面试真题-高频题精讲(一)




3.无重复字符的最长子串

leetcode-3 最大字符子串

Longest Common SubString, 又称为”LCS”问题


  1. 暴力法:



子序列子串: 子序列不需要连续

暴力法的时间复杂度:



  1. 线性法:



复杂度分析:



  1. 优化的线性法:



4.寻找两个有序数组的中位数

leetcode-4 寻找两个有序数组的中位数


  1. 暴力法:



  1. 切分法:








时间复杂度:

扩展一:

如果给定的两个数组都是没有经过排序处理的,应该如何找出中位数呢?

先合并排序,再找出中位数.

有无更好的方法呢?


扩展二:

对于分布式的大数据处理,应考虑两方面的限制:

  • 每台服务器进行算法计算的复杂度限制,包括时间和空间复杂度
    • 空间复杂度: 假设存储的都是32位整型,即4个字节,那么10亿个数需占用40亿字节,大约40GB
    • 而快速排序的空间复杂度为log(n),那大约30次堆栈压入
  • 服务器与服务器之间进行通信时的网络带宽限制


经典的快速选择算法


leetcode-23 合并K个排序链表


8.剖析大厂算法面试真题-高频题精讲(二)


  • 合并区间+无重叠区间

  • 火星字典

  • 基本计算器




56.合并区间


leetcode-56 合并区间


435.无重叠区间


leetcode-435 无重叠区间


力扣上还有很多关于区间的问题




269.火星字典


leetcode-269 火星字典




772.基本计算器III


leetcode-772 基本计算器III



10.剖析大厂算法面试真题-难题精讲(一)



  • 正则表达式匹配

  • 柱状图中的最大矩形

  • 实现strStr()



10.正则表达式匹配


leetcode-10 正则表达式匹配

leetcode-44 通配符匹配


84.柱状图中最大的矩形


leetcode-84 柱状图中最大的矩形


28.实现strStr()


leetcode-28 实现strStr()



11.剖析大厂算法面试真题-难题精讲(二)



  • 回文对

  • 至多包含K个不同字符的最长子串

  • 接雨水II



336.回文对


leetcode-336 回文对


340.至多包含K个不同字符的最长子串


leetcode-340 至多包含K个不同字符的最长子串


407.接雨水II


leetcode-407 接雨水II

leetcode-417 太平洋大西洋水流问题



12.冲刺



  • 刷题
  • 简历
  • 面试经验


刷题/Leetcode


这点上Golang差好多,能直接用的只有slice,map这聊聊几个…

最关键的不是量的问题,而是质的问题


白板面试注意事项:


刷过的题目忘了怎么办?


简历/Resume



面试经验/Interview