题库练习
精选算法题目,提供详细解析与多语言代码示例,帮助你巩固算法知识,提升解题能力。
假设你正在爬楼梯,每次可以爬 1 或 2 个台阶,求爬到第 n 阶有多少种不同的方法。
给定不同面额的硬币和一个总金额,计算可以凑成总金额所需的最少硬币个数,每种硬币数量无限。
按顺序挑战魔导书,每本书消耗或增加魔力值,求在魔力值始终非负的前提下最多能挑战多少本
在网格中只向右或向下移动,仅经过值为0的格点,求从左上到右下的最少转向次数
每种素材至少买一个,恰好花完预算,求采购方案总数(完全背包计数)
计算从左上角到右下角的不同路径数量,机器人只能向下或向右移动。
给定一个不含重复数字的数组,返回其所有可能的全排列。
给定一个升序数组和一个目标值,找到和为目标值的两个元素下标。
将数组分成两组(均非空),最小化两组的极差之和
给定一组区间,统计与其他任何区间都不重叠的区间数量
按照自定义规则对版本号字符串进行排序,包括主版本号逐段比较和测试版优先级处理
在树上选择节点翻转其子树同奇偶深度节点,求从初始状态变为目标状态的最少操作次数
给定课程依赖关系,判断是否可以完成所有课程。
检测有向图中的循环依赖,若无环则更新每个被依赖部件的最大版本号
给定二叉树的根节点,返回其节点值的层序遍历结果(逐层从左到右)。
在双向带权图中多次查询两个节点之间的最短路径,使用 Floyd 预处理应对大量查询
给定二叉树根节点,返回其最大深度,即从根节点到最远叶子节点的最长路径上的节点数。
在二叉树中统计从根到叶子的合法路径,路径上不允许连续两个负值节点,求最大路径和、阈值判断和路径总数
给定二叉树的根节点,返回其节点值的前序遍历结果(根 → 左 → 右)。
给定二叉树的根节点,检查它是否是轴对称的。
给定一个由 '1'(陆地)和 '0'(水)组成的二维网格,计算岛屿的数量。