前端进阶之旅前端进阶之旅
  • 基础篇HTML/CSS/JS 打底
  • 进阶篇原理与工程化
  • 高频篇面试最常问的那批
  • 精选篇按模块收敛的总结
  • 手写篇常考代码手写实现
  • 面经篇真实面试问题复盘
  • AI 篇NEWAI 时代的前端考点
  • 历年面经NEW按年份追踪真实考点
  • 每日一题每天一道,攒手感
  • 专项自测100 题快速查漏
  • 小程序题库小程序专项刷题
  • 算法题库NEW在线编码即时判题
  • 知识卡片NEW碎片时间过考点
  • 面试题大全常见问题解析
  • AI 答疑NEW随时提问,即时解析
  • AI 模拟面试NEW模拟真实面试 + 报告
  • AI 定制路线NEW按你的简历现排
  • AI 知识地图NEW串起全站知识点
  • 原理篇React / Vue 源码拆解
  • HTTP从报文一路讲到 HTTPS
  • 浏览器渲染、事件循环、进程
  • 计算机基础Linux、网络、操作系统
  • 设计模式23 种模式怎么用
  • Node学习指南从环境搭建到服务端
  • NPM工作流script、依赖与发布
  • Docker容器化部署上手
  • Canvas图形与动画实战
  • 前端系统进阶学习大型项目工程化
  • 前端综合文章长期沉淀的实践文
  • 思维导图知识点全景图
  • 学习路线按图索骥不跑偏
  • AI 热点NEWAI 每日动态
  • 公众号动态公众号历史文章
  • 博客动态站长的技术博客
  • 开发者导航常用工具与文档站
  • 基础篇HTML/CSS/JS 打底
  • 进阶篇原理与工程化
  • 高频篇面试最常问的那批
  • 精选篇按模块收敛的总结
  • 手写篇常考代码手写实现
  • 面经篇真实面试问题复盘
  • AI 篇NEWAI 时代的前端考点
  • 历年面经NEW按年份追踪真实考点
  • 每日一题每天一道,攒手感
  • 专项自测100 题快速查漏
  • 小程序题库小程序专项刷题
  • 算法题库NEW在线编码即时判题
  • 知识卡片NEW碎片时间过考点
  • 面试题大全常见问题解析
  • AI 答疑NEW随时提问,即时解析
  • AI 模拟面试NEW模拟真实面试 + 报告
  • AI 定制路线NEW按你的简历现排
  • AI 知识地图NEW串起全站知识点
  • 原理篇React / Vue 源码拆解
  • HTTP从报文一路讲到 HTTPS
  • 浏览器渲染、事件循环、进程
  • 计算机基础Linux、网络、操作系统
  • 设计模式23 种模式怎么用
  • Node学习指南从环境搭建到服务端
  • NPM工作流script、依赖与发布
  • Docker容器化部署上手
  • Canvas图形与动画实战
  • 前端系统进阶学习大型项目工程化
  • 前端综合文章长期沉淀的实践文
  • 思维导图知识点全景图
  • 学习路线按图索骥不跑偏
  • AI 热点NEWAI 每日动态
  • 公众号动态公众号历史文章
  • 博客动态站长的技术博客
  • 开发者导航常用工具与文档站
首页程序员面试题库算法面试题
面试知识索引 · 分类、标签与搜索

算法面试题,12 道完整答案

算法面试题第 1 页,显示第 1–12 题,共找到 12 道完整解析,可继续按分类、标签与关键词缩小范围。

12筛选结果
52技术分类
178检索标签
1索引分页
按分类建立知识面,再用标签和搜索定位问题

每页只渲染 50 道题。分类与标签分页可抓取,自由搜索结果不会制造无限 SEO 页面。

快速定位

分类、标签与关键词搜索

清除全部筛选
题库检索
技术分类52 个
全部分类5000算法12AI Agent511浏览器301JavaScript285React281AI 开发262CSS240Node.js217TypeScript206Vue180前端工程化138
查看全部 52 个分类
React Native135操作系统135数据库134Docker95计算机网络94API 设计90Kubernetes90HTML89Redis89全栈开发88分布式系统88系统设计86HTTP85Next.js60Angular58Linux53Nuxt51PostgreSQL46可观测性46设计模式46小程序45身份与权限45无障碍44MongoDB43PWA43Web 安全43Git42前端测试42前端性能41WebAssembly40测试40AI 工程37SvelteKit37Go35前端数据管理30React Router29AI 全栈28Svelte27Java10数据结构5前端手写题3
算法 标签7 个
搜索与排序4测试3图算法2字符串算法2树与遍历2动态规划1数组与双指针1
当前页01 / 1

正在显示第 1–12 题

算法12
第 1 页

本页面试问题

按稳定语义路径排序

  1. 0001
    算法数组与双指针

    可变滑动窗口求最短满足条件的子数组时,收缩窗口的条件如何判断?

    本文解释可变滑动窗口求最短子数组的收缩时机:在条件满足后立刻尝试左移左指针,并逐点更新答案;说明安全收缩依赖窗口性质的单调性,并给出正整数数组求和场景的完整代码与失败边界。

    核心关键词可变滑动窗口 最短子数组
    #数组与双指针
  2. 0002
    算法动态规划

    动态规划和贪心算法的决策方式有什么本质区别,为什么贪心在有些最优化问题上失效?

    本题说明动态规划与贪心的决策本质差异:前者通过状态枚举和集合比较保证全局最优,后者利用局部最优迭代,但只在贪心选择性质成立时有效。文章给出失效场景如非规范硬币找零,并总结可操作判断方法。

    核心关键词动态规划 贪心算法 区别
    #动态规划
  3. 0003
    算法图算法

    为什么 BFS 能在无权图中求出单源最短路径?

    本文解释 BFS 在无权图中求单源最短路径的正确性依据,包括层序扩展、首次访问即最短的证明思路,以及通过前驱数组还原具体路径的方法,并给出适用边界。

    核心关键词BFS 无权图 最短路
    #图算法
  4. 0004
    算法图算法

    Dijkstra 用二叉堆和朴素数组实现的复杂度分别是多少,各自适合什么图?

    Dijkstra 算法两种实现复杂度对比:朴素数组 O(V²+E) 与二叉堆 O((V+E)logV),分别适合稠密图和稀疏图。给出选型依据。

    核心关键词Dijkstra 复杂度 堆优化
    #图算法
  5. 0005
    算法搜索与排序

    二分查找如何找到目标值的第一个出现位置?

    说明如何用二分查找在有序数组中找到目标值第一次出现的下标,重点讲解命中后继续向左收缩的机制以及返回候选值的语义,并给出可直接运行的 JavaScript 实现与边界测试。

    核心关键词二分查找 第一个出现位置 首次出现
    #搜索与排序#测试
  6. 0006
    算法搜索与排序

    二分查找失败时如何返回目标值应插入的位置?

    本文证明二分查找失败后左指针恰好是插入点,给出标准 lower_bound 实现,讨论空数组、极值、重复元素等边界,可用于 LeetCode 35 题。

    核心关键词二分查找 插入位置
    #搜索与排序
  7. 0007
    算法搜索与排序

    二分查找如何定位目标值的最后一个出现位置?

    本解释专注于上界式二分,给出如何用左闭右开区间、<=判断收缩左界,最终定位最后出现位置,覆盖全等数组、缺失及动态边界,并与第一个出现位置算法形成互补。

    核心关键词二分查找 最后一个出现位置 upper_bound
    #搜索与排序
  8. 0008
    算法搜索与排序

    写二分查找时用左闭右闭和左闭右开区间有什么本质区别?

    本文解析二分查找左闭右闭与左闭右开写法的根本差异:循环不变量和区间收缩方式不同导致while条件一个用<=一个用<,mid更新也相差一。通过具体代码演示两种写法查找下界,给出重复元素、越界和空数组等边界测试,帮助读者写出无死循环的二分。

    核心关键词二分查找 循环不变量 边界写法
    #搜索与排序#测试
  9. 0009
    算法字符串算法

    为什么 KMP 字符串匹配的整体时间复杂度是 O(n+m),文本指针为什么从不回退?

    本文解析KMP算法O(n+m)复杂度的原理:文本指针i单向递增,模式指针j的摊还回退代价被成功匹配次数限制,从而消除暴力匹配的O(nm)最坏情况。

    核心关键词KMP 时间复杂度 文本指针不回退
    #字符串算法
  10. 0010
    算法字符串算法

    KMP 算法中的前缀函数(失败函数)是什么含义,如何在线性时间内求出?

    本文解释 KMP 前缀函数的定义、性质与线性递推构造,分析失配时 j 回退的次数,并给出边界输入如空串、单一重复串等。

    核心关键词KMP 前缀函数 prefix function 计算
    #字符串算法
  11. 0011
    算法树与遍历

    如何求一棵二叉树的最大深度?

    本文讲解求二叉树最大深度的两种递归思路:自底向上返回子树高度加一,自顶向下传递当前深度并记录全局最优。给出可运行的JavaScript实现与空树、链状、平衡树等多组测试,分析时间与空间复杂度,澄清边界约定。

    核心关键词二叉树 最大深度 高度 递归计算
    #树与遍历#测试
  12. 0012
    算法树与遍历

    如何根据前序和中序遍历结果重建一棵二叉树?

    本文讲解如何利用前序和中序遍历结果唯一重建二叉树。给出递归划分的索引推导过程、工程场景中的序列恢复方式,以及节点重复值或数组不一致时的失败边界。附完整 JavaScript 实现和时间复杂度分析。

    核心关键词重建二叉树 前序中序 还原
    #树与遍历
上一页
1
下一页
前端进阶之旅本地 Markdown 维护 · 服务端分页 · 完整内容对用户与搜索引擎一致