必须为亚马逊、微软、Adobe 等公司做编码问题……
随着安置季节的回归,我们将帮助您在面试中取得好成绩。我们为您挑选了一些最常见的和必须做的练习题。
您还可以参加我们的模拟分班竞赛,这将帮助您同时学习不同的主题和练习,模拟真实分班考试环境的感觉。
注意:现在您可以跟踪您在这些问题必须做的面试准备课程中的进度。
为产品型公司做准备?查看必须为基于产品的公司做的编码问题
话题 :
- 数组
- 细绳
- 链表
- 堆栈和队列
- 树和 BST
- 堆
- 递归
- 散列
- 图形
- 贪婪的
- 动态规划
- 分而治之
- 回溯
- 位魔术
数组
- 给定总和的子数组
- 数三胞胎
- Kadane 算法
- 数组中缺少数字
- 合并两个排序数组
- 交替重新排列数组
- 对数
- 数组反转
- 对包含 0、1 和 2 的数组进行排序
- 平衡点
- 数组中的领导者
- 最低平台
- 分组反转数组
- 第 K 个最小元素
- 捕获雨水
- 毕达哥拉斯三胞胎
- 巧克力分配问题
- 股票买卖
- 左侧较小,右侧较大的元素
- 将数组转换为 Zig-Zag 时尚
- 最后索引为 1
- 螺旋遍历矩阵
- 由数组形成的最大数
以上解决了吗?去问更多问题
细绳
- 反转给定字符串中的单词
- 给定字符串的排列
- 字符串中最长的回文
- 递归删除所有相邻的重复项
- 检查字符串是否旋转了两个位置
- 罗马数字转整数
- 字谜
- 删除重复项
- 形成一个回文
- 字符串中最长的不同字符
- 实现 Atoi
- 实现 strstr
- 最长公共前缀
以上解决了吗?去问更多问题
链表
- 在链表中查找中间元素
- 反转一个链表
- 旋转链表
- 在给定大小的组中反转链接列表
- Y形链表中的交点
- 检测链表中的循环
- 删除链表中的循环
- 链表末尾的第 n 个节点
- 展平链接列表
- 合并两个排序的链表
- 两个链表的交点
- 链表的成对交换
- 将两个由链表表示的数字相加
- 检查链表是否为回文
- 使用链表实现队列
- 使用链表实现堆栈
- 给定一个由 0、1 和 2 组成的链表,对它进行排序
- 不带头指针的删除
堆栈和队列
- 括号检查器
- 下一个更大的元素
- 使用两个堆栈排队
- 使用两个队列堆叠
- 从堆栈中获取最小元素
- LRU 缓存
- 循环游
- 流中的第一个非重复字符
- 烂橙子
- 所有大小为 k 的子数组的最大值
树
- 打印二叉树的左视图
- 检查 BST
- 打印二叉树的底视图
- 以垂直顺序打印二叉树
- 螺旋形式的水平顺序遍历
- 连接同一级别的节点
- BST 中的最低共同祖先
- 将给定的二叉树转换为双向链表
- 编写代码来确定两棵树是否相同
- 给定一棵二叉树,检查它是否是自身的镜像
- 二叉树的高度
- 最大路径和
- 二叉树的直径
- 叶节点数
- 检查给定的二叉树是否高度平衡
- 序列化和反序列化二叉树
以上解决了吗?去问更多问题
堆
- 在流中查找中位数
- 堆排序
- 二进制最小堆上的操作
- 重新排列字符
- 合并 K 个已排序的链表
- 流中的第 K 个最大元素
递归
- 洪水填充算法
- 路径数
- 组合总和 - 第 2 部分
- 特殊键盘
- 约瑟夫斯问题
散列
- 相对排序
- 按频率对数组元素进行排序
- 总和为 0 的最大子数组
- 共同元素
- 找出所有四个和数
- 交换对使总和相等
- 计算每个窗口中的不同元素
- 数组对和整除性问题
- 最长连续子序列
- 另一个数组的数组子集
- 找到给定总和的所有对
- 查找第一个重复的字符
- 零和子数组
- 最小索引字符
- 检查两个数组是否相等
- 不常见的字符
- 包含另一个字符串的所有字符的字符串中的最小窗口
- 第一个元素出现 k 次
- 检查频率是否可以相等
图形
- 深度优先遍历
- 广度优先遍历
- 检测无向图中的循环
- 在有向图中检测循环
- 拓扑排序
- 找出岛屿的数量
- 实施 Dijkstra
- 最小掉期
- 强连通分量
- 最短源到目标路径
- 查找路径是否存在
- 最低成本路径
- 弦乐圈
- 弗洛伊德·沃歇尔
- 外星人词典
- 蛇梯问题
贪婪的
- 活动选择
- 一个房间开N次会议
- 硬币堆
- 最大化玩具
- LRU 中的页面错误
- 可能的最大数量
- 最小化高度
- 最小化产品的总和
- 霍夫曼解码
- 最小生成树
- 在糖果店购物
- 极客收集球
动态规划
- 最小操作
- 最大长度链条
- 最少硬币数量
- 最长公共子串
- 最长递增子序列
- 最长公共子序列
- 0 - 1 背包问题
- 最大和增加子序列
- 最少跳跃次数
- 编辑距离
- 硬币找零问题
- 子集和问题
- 盒子堆叠
- 棒材切割
- 矩阵中的路径
- 最小和分区
- 计算覆盖距离的方式数
- 鸡蛋掉落拼图
- 游戏的最佳策略
- 最短公共超序列
分而治之
- 查找排序数组中出现一次的元素
- 在旋转数组中搜索
- 二进制搜索
- 两个排序数组的中间元素之和
- 快速排序
- 合并排序
- 两个排序数组的第 K 个元素
回溯
- N皇后问题
- 解决数独
- 迷宫问题中的老鼠
- 字谜
- 生成 IP 地址
位魔术
- 找到第一个设置位
- 最右边的不同位
- 检查是否设置了第 K 位
- 在给定范围内切换位
- 设置第 k 位
- 2 的幂
- 位差
- 旋转位
- 交换所有奇数位和偶数位
- 计算总设置位
- 最长的连续 1
- 稀疏数
- 单独在一对
- 最大子集异或
关于数组的更多问题
- 查找丢失和重复
- 最大指数
- 不允许连续 1
- 多数元素
- 总和最接近零的两个数字
- 螺母和螺栓问题
- 布尔矩阵问题
- 最小正缺失数
- 跳跃的毛毛虫
关于字符串的更多问题
- 字符串数组中出现频率最高的单词
- CamelCase 模式匹配
- 字符串无知
- 包含另一个字符串的所有字符的字符串中的最小窗口
- 设计一个微小的 URL 或 URL 缩短器
- 给定字符串的排列
- 非重复字符
- 检查字符串是否相互旋转
- 拯救钢铁侠
- 重复字符
- 删除常用字符并连接
- 极客及其彩线
- 序列中重复次数第二多的字符串
关于树的更多问题
- 镜像树
- 二叉树中最长的连续序列
- 二叉树的底视图
- 二叉树中的最低共同祖先
- 二进制到 DLL
重要链接:
- 面试和竞争性编程的难度排序编码问题
- 第 1 轮中提出的能力问题:为此目的设计的安置课程。
- 来自不同计算机科学科目的 MCQ:主题测验
- 所有公司的面试理论和编码问题:公司明智的所有实践问题。
- 所有公司的面试经历:面试角。
Geeksforgeeks 课程:
1. 语言基础课程【C++/ Java / Python 】
借助 GeeksforGeeks 语言基础课程 - Java基础 | 从头开始学习任何编程语言并了解其所有基本概念,以最简单的方式打下强大的编程基础Python基金会 | C++ 基础
2.极客课堂直播
从任何地理位置获取以面试为中心的关于数据结构和算法的在线直播课程,以学习和掌握 DSA 概念,以提高您的问题解决和编程技能,并破解任何基于产品的公司的面试 – Geeks Classes: Live Session
3.完成面试准备
通过完整的面试准备课程在一个地方满足您的所有面试准备需求,该课程以最实惠的价格为您提供所有必要的东西,为任何基于产品、基于服务或初创公司的公司做准备。
4. DSA 自定进度
开始学习数据结构和算法,为 Microsoft、 Amazon 、Adobe 等顶级 IT 巨头的面试做准备速度和便利。
5. 公司特定课程——亚马逊、微软、TCS 和 Wipro
通过专门准备这些公司在编码面试中通常会问的问题来破解任何基于产品的巨头公司的面试。参考 GeeksforGeeks 公司特定课程:Amazon SDE 测试系列等。
如果您喜欢 GeeksforGeeks 并愿意做出贡献,您还可以撰写文章并将您的文章邮寄至 review-team@geeksforgeeks.org。在 GeeksforGeeks 主页上查看您的文章并帮助其他 Geeks。