各大厂历年高频面试题系列,以下为部分内容不包括全部:
双指针类面试题
括号类面试题
回文类面试题
递推类面试题
树型dp类面试题
区间dp类面试题
背包dp类面试题
排序相关面试题
常见贪心面试题
常见图算法面试题
子数组类面试题
子序列类面试题
二分类面试题
bfs与dfs类面试题
博弈类面试题
递归、回溯类面试题
以下为部分题目列表:
在一个有序数组中,找某个数是否存在
在一个有序数组中,找大于等于某个数最左侧的位置
在一个有序数组中,找小于等于某个数最右侧的位置
局部最小值问题
如何不用额外变量交换两个数
一个数组中出现了奇数次的数
提取整形数最右侧的1
一个数组中出现奇数次的两个数
一个数组中有一种数出现K次,其他数都出现了M次
单链表和双链表如何反转
把链表中的给定值都删除
双向链表实现栈和队列
数组实现栈和队列
实现最小栈
如何用栈结构实现队列结构
如何用队列结构实现栈结构
用递归方法求数组中的最大值
求数组小和
荷兰国旗问题
快速排序
堆排序
相对几乎有序数组排序
固定数组实现前缀树
哈希表实现前缀树
计数排序
基数排序代码
在整型数组中把奇数放在左边偶数放在右边且保持稳定性
判断链表是否为回文结构
深度复制带有rand指针的链表
两个可能有环的单链表相交的第一个节点
不给单链表的头节点删除指定节点
递归方式实现二叉树的三序遍历
非递归方式实现二叉树的三序遍历
实现二叉树的按层遍历
二叉树的序列化和反序列化
如何设计一个打印整棵树的打印函数
求二叉树最宽的层有多少个节点
二叉树中指定节点的后继节点
从上到下打印对折纸条所有折痕的方向
判断二叉树是不是平衡二叉树
判断二叉树是不是满二叉树
判断二叉树是不是搜索二叉树
二叉树中最大的二叉搜索子树的大小
二叉树中最大的二叉搜索子树的头节点
判断二叉树中是不是完全二叉树
二叉树上两个节点的最低公共祖先
求二叉树两个节点的最大距离
派对的最大快乐值
字符串组成的数组拼接后字典序最小的结果
点亮str中所有需要点亮的位置至少需要几盏灯
金条分割的最小代价
会议室能容纳的最多宣讲场次
做项目获得的最大钱数
并查集代码
真实的用户数量
图的拓扑排序算法
最小生成树算法之Kruskal
最小生成树算法之Prim
Dijkstra算法
打印n层汉诺塔从最左边移动到最右边的全部过程
递归逆序一个栈
打印一个字符串的全部子序列
打印一个字符串的全部子序列,要求不要出现重复字面值的子序列
打印一个字符串的全部排列
打印一个字符串的全部排列,要求不要出现重复的排列
数字转化为字符串的结果数
背包能装下最多的价值
A,B玩家从左右两边拿纸牌,返回最后获胜者的分数
小人过有鳄鱼的河
海盗分金币问题
欧拉信封问题
N皇后问题
Fibonacci数列
机器人必须走 K 步,最终能来到P位置的方法有多少种
背包问题的动态规划解法
数字转化为字符串的结果数
A,B玩家从左右两边拿纸牌,返回最后获胜者的分数
面值数组组成面值的方法数-张数不限
多少张贴纸可以贴出给定字符串
两个字符串的最长公共子序列问题
让所有咖啡杯变干净的最早完成时间
滑动窗口内的最大值
整形数组中子数组最大值减最小值达标的子数组个数
整形数组中子数组累加和乘最小值的最大值
单调栈代码
直方图面积问题
一个矩阵求内部长方形有多少个1
斐波那契数列矩阵乘法方式的实现
一个人迈上N级台阶的方法数
母牛生小牛, N年后牛的数量
由0和1两种字符构成的达标字符串
在无序数组中求第K小的数
服务器今天登录所有用户抽出100个幸运观众
概率生成数字问题
机器所有吐出的球都等概率放进袋子里
bfprt代码
在无序数组中生成前十小的数组
字符串str中是否有某个子串是等于字符串match|KMP算法
判断两个字符串是否互为旋转词
两棵二叉树是否有一致结构的子树
字符串变为回文需要添加的最少字符
Manacher算法代码
Morris遍历代码
Morris实现中序遍历
Morris实现前序遍历
Morris实现后序遍历
二叉树的最小深度
线段树代码
线段树实例一
方块掉落之后的最大高度
指定范围上涂色的房子有多少种
最大线段重叠问题-线段树实现|最大线段重合问题
矩形重叠问题
给定一个正整数N,返回至少使用多少袋子装苹果
牛羊吃N份青草谁会赢
给定一个参数N,返回是不是可以表示成若干连续正数和的数
两人操作开关比赛
zigzag打印矩阵
转圈打印矩阵
原地旋转正方形矩阵
正整数组成的无序数组中子数组的累加和等于K的最大长度
整数组成的无序数组中子数组的累加和等于K的最大长度
整数组成的无序数组中达标的含有1跟2的最大子数组长度
整数组成的无序数组中子数组的累加和小于等于K的最大长度
求最大子数组异或和
二维01矩阵中一共有多少个岛
推荐饭店问题
40亿个无符号整数的文件中找到出现次数最多的数
40亿个无符号整数的文件中找到所有未出现过的数
100亿个URL的大文件中找出其中所有重复的URL
某搜索公司一天的用户搜索词汇是海量的, 求出每天热门Top100词汇
40亿个无符号整数找出所有出现了两次的数
40亿个无符号整数的中位数
有一个10G大小的文件中的数字排序
区间和的个数
滑动窗口中位数
一根长度为K的绳子,最多能盖住几个点
括号有效配对问题
最少要填几个字符才能让无效括号字符串变成有效
最长的括号有效子串的长度
最大嵌套的括号层数
最少需要涂染几个正方形
边框全是1的最大正方形的边长
根据要求构造出一个长度为M的数组
路径定义从头结点出发叶节点为止, 返回最大路径和
路径定义从任何节点结点出发往下走到任意节点, 返回最大路径和
路径定义从任何节点结点出发到任何节点, 返回最大路径和
路径可以从任何节点出发,到叶节点为止,返回最大路径和
在行有序、列也有序的二维数组中,找num
使每个打包机器上的物品数量相等需要搬动的最小轮数
找出最大的左部分最大值减去右部分最大值的绝对值
数组直方图装水
二维数组直方图装水
累加和为aim的所有二元组
累加和为aim的所有三元组
第k小的数值对
每个人按照标准选工作后所能获得的最高报酬
背包中有多少种零食放法
二维数组最小路径和
两个字符的最长公共子序列
两个字符串的最长公共子串
词频最大的前K个字符串
指定结构中加入的所有字符串中,词频最大的K个
打印目录结构
搜索二叉树转换为有序的双向链表
已知中序遍历数组和先序遍历数组,返回后序遍历数组
最长递增子序列问题的O(NxlogN)的解法
给你一批信封,返回最大的嵌套层数
给定一个数组arr,返回子数组的最大累加和
给定一个整型矩阵,返回子矩阵的最大累计和
问字符串s2最少删除多少字符可以成为s1的子串
将str1编辑成str2的最小代价
求完全二叉树节点的个数
LRU内存替换算法的实现
两个字符串的最短的变换路径
主播们能获得的最大收益
求最大子数组异或和
哪一种划分下一个数组异或和为零的部分最多
字符串express能有多少种组合方式,可以达到desired的结果
以最少的跳跃次数跳到最后一个数
一个字符串至少切几刀,能让切出来的部分全是回文串
求两个有序数组累加和最大的前K个
数组能不能分成4个相等的部分
判断字符串aim是否是str1和str2交错组成
无序数组需要排序的最短子数组长度
返回正数数组 arr 的最小不可组成和
arr中一定有1, 返回正数数组 arr 的最小不可组成和
想累加得 到 1~aim范围上所有的数,返回数组arr最少还缺几个数
在一个字符串中找到没有重复字符子串中最长的长度
返回数组中,有多少个独立的域
全是小写字母的字符串str,删除多余字符后达到字典序最小
一条直线最多能穿过多少个点
打怪兽需要花的最小钱数
最少添加多少字符使字符串变为回文串
一种消息接收并打印的结构设计
普通硬币跟纪念币拼出指定面值
1~N中所有数字包含1的个数
最大可整合子数组的长度
只做一次交易买卖股票的最大钱数
多次交易买卖股票的最大钱数
最多K次交易买卖股票的最大钱数
数组中离给定K值最近的子数组累加和
二维数组中离给定K值最近的子矩阵累加和
二维数组最大递增链的长度
二维数组中可以走出的单词
给定两个字符串S和T,返回S子序列等于T的不同子序列个数
数组中添加加减乘除运算符得到指定值的所有方法
摘樱桃问题
骑士能见到公主的最少初始血量
矩阵往返一次的最大路径和
无序数组如果排序之后相邻数之间的最大差值
使用单词表拼接长字符串的方法数
求二叉树路径累加和为K是最长路径的节点数
找到数组中只出现1次的数
数组中出现次数超过一半及超过N除K的数
喝完咖啡并洗完咖啡杯的时间点
喝咖啡的最好时间
两个有序数组中最大的k个数
两个等长有序数组求上中位数
两个有序数组中最大的k个数-最优解
约瑟夫环问题
约瑟夫环拓展问题
大楼最高点变化的轮廓线
Nim博弈问题
乘客坐船使用的最少船数
最长回文子序列长度
蛇走的轨迹问题
计算str表达式结果
子序列回文
给定一个正整数n, 求裂开的方法数
求1~N所有数字排列中,等于指定K个逆序对数的排列数
求二叉树中复合BST的最大拓扑结构的大小
将长度为2N数组的前半跟后半数组每个数交替
能够互相看见环形山的对数
调整BST中错误的两个节点
非负数组子序列中累加和%m的最大值
项目经理和程序员
字符串匹配问题
自由之路
打气球的最大分数
汉诺塔游戏的最佳状态
合并相邻K个数字的最小代价
求字符串str1的子串中含有str2所有字符的最小子串长度
旋变字符串
LFU内存替换算法的实现
数组最大的三子数组的最大和
分糖果问题
二叉树放置照相机
距离首都距离
邮局选址问题
画匠问题
丢棋子问题
牛牛分田地
等累加和集合对中最大的累加和
求数组调整之后的逆序对数量
数组中全是1的最大正方形
最大的全是1的子矩阵中1的数量
无序数组中最长的连续序列的长度
二叉树节点间最近公共祖先的批量查询问题
TSP问题
贴瓷砖问题
贴瓷砖问题M*N问题
移除盒子
奇怪的打印机
最小区间
还原数组丢失的数字
后缀数组
在两个给定整形数组中从左往右挑选K个数的所有结果中的最大数字
两数之和问题
无重复字符的最长子串
寻找两个正序数组的中位数
最长回文子串
整数反转
字符串转换整数 (atoi)
正则表达式匹配
盛最多水的容器
整数转罗马数字
罗马数字转整数
最长公共前缀
三数之和
电话号码的字母组合
删除链表的倒数第N个节点
有效的括号
合并两个有序链表
括号生成
合并K个升序链表
删除排序数组中的重复项
实现 strStr()
两数相除
搜索旋转排序数组
在排序数组中查找元素的第一个和最后一个位置
有效的数独
解数独
外观数列
缺失的第一个正数
接雨水
通配符匹配
跳跃游戏
跳跃游戏 II
全排列
最长同值路径
旋转图像
字母异位词分组
Pow(x, n)
N皇后
最大子序和
不同路径
合并区间
加一问题
x 的平方根
爬楼梯
矩阵置零
最小覆盖子串
子集
单词搜索
柱状图中最大的矩形
合并两个有序数组
解码方法
二叉树的中序遍历
验证二叉搜索树
对称二叉树
二叉树的层序遍历
二叉树的锯齿形层次遍历
二叉树的最大深度
从前序与中序遍历序列构造二叉树
将有序数组转换为二叉搜索树
填充每个节点的下一个右侧节点指针
杨辉三角
买卖股票的最佳时机
买卖股票的最佳时机 II
买卖股票的最佳时机 IV
最佳买卖股票时机含冷冻期
二叉树中的最大路径和
验证回文串
单词接龙
最长连续序列
被围绕的区域
分割回文串
加油站
只出现一次的数字
复制带随机指针的链表
单词拆分
单词拆分 II
环形链表
LRU缓存机制
排序链表
直线上最多的点数
逆波兰表达式求值
乘积最大子数组
最小栈
相交链表
寻找峰值
缺失的区间
分数到小数
多数元素
颠倒二进制位
Excel表列序号
阶乘后的零
最大数
旋转数组
位1的个数
打家劫舍
岛屿数量
快乐数
计数质数
反转链表
课程表
实现 Trie (前缀树)
课程表 II
单词搜索 II
数组中的第K个最大元素
存在重复元素
天际线问题
基本计算器 II
基本计算器 III
二叉搜索树中第K小的元素
回文链表
二叉树的最近公共祖先
删除链表中的节点
除自身以外数组的乘积
滑动窗口最大值
搜索二维矩阵 II
有效的字母异位词
展开二维向量
会议室 II
缺失数字
最长上升子序列
最长递增子序列的个数
搜寻名人
寻找重复数
火星词典
完全平方数
移动零
二叉搜索树中的顺序后继
生命游戏
数据流的中位数
二叉树的序列化与反序列化
最长上升子序列
二维区域和检索 - 可变
3的幂
反转字符串
四数相加 II
计算右侧小于当前元素的个数
零钱兑换
摆动排序 II
奇偶链表
矩阵中的最长递增路径
递增的三元子序列
至多包含 K 个不同字符的最长子串
扁平化嵌套列表迭代器
前 K 个高频元素
判定井字棋胜负
两个数组的交集 II
两整数之和
有序矩阵中第K小的元素
常数时间插入、删除和获取随机元素
打乱数组
字符串中的第一个唯一字符
至少有K个重复字符的最长子串
Fizz Buzz
最长有效括号
组合总和
最小路径和
二叉树展开为链表
最大正方形
翻转二叉树
打家劫舍 III
字符串解码
根据身高重建队列
分割等和子集
路径总和 III
和为K的子数组
找到字符串中所有字母异位词
找到所有数组中消失的数字
目标和问题
二叉树的直径
最短无序连续子数组
合并二叉树
每日温度
任务调度器
最佳的碰头地点
带分数和
算法课练习小题
只出现两次的数
最少按几次开关才能点亮所有的灯
买饮料
司机调度
新手游游的数组难题
扑克牌问题
棋盘染色问题
一个数组中有一种数出现K次,其他数都出现了M次
给购买次数最多的前K名用户颁奖
将单向链表按某值划分成左边小、中间相等、右边大的形式
链表改序问题
二叉树某一节点X祖先节点的交集
将N叉树编码为二叉树
拓扑排序
象棋问题-马只走K步跳到指定位置的方法数 暴力O(8^k)
货币数组组成面值的方法数-同值认为不同
面值数组组成面值的方法数-张数不限
货币数组组成面值的方法数-同值无差别(张数限定)
Bob生还的概率
英雄砍死怪兽的概率
正数数组分割为累加和接近的两个集合
正数数组分割为个数跟累加和接近的两个集合
货币数组组成面值的最少货币数
全是1的最大子矩形面积 or 最大矩形
全是1的子矩阵数量 or 统计全 1 子矩形
子数组最小值的累加和
无序数组中求Top K
标签:知识点,最大,链表,二叉树,数组,字符串,数据结构,学完,节点 From: https://blog.csdn.net/liu1813335/article/details/137527056