文章介绍了在仅含数字的字符串中插入 “+”、 “-”、 “*” 三种二元运算符,使表达式的计算结果等于给定目标值的问题。给出长度 ≤10 的字符串和 |target|≤10⁹ 的约束,并通过示例说明期望输出。核心解法采用深度优先搜索回溯:从左到右枚举每段数字的取值长度,避免前导零;在非首位位置尝试三种运算符,并利用累计结果 `res` 与最近乘积 `mul` 处理乘法的优先级(`res - mul + mul*val`)。递归结束时若累计结果等于目标即记录表达式。代码实现了上述思路并返回所有符合条件的表达式集合。

本文介绍了“只出现一次的数字(二)”题目:在整数数组中唯一出现一次的数其余均出现三次,要求找出该数。给出 Java 实现思路:利用 32 位计数数组统计每个位上 1 的出现次数,随后对 3 取模得到唯一数的对应位,最终合成答案。代码简洁、时间 O(n)、空间 O(1)。

本文介绍了二叉树的之字形层序遍历问题,要求在 O(n) 时间和空间内实现,先左向右、后右向左交替输出。给出多个示例说明输入输出格式。提供的 Java 解法采用 BFS,利用队列逐层遍历并通过布尔标记决定是否对当前层结果进行逆序,最终返回包含各层节点值的列表。

文章介绍了“BM83 字符串变形”题目:给定长度 n (1≤n≤10⁶)的只含大小写字母和空格的字符串,需要将单词顺序反转并对每个字符切换大小写,例如 “Hello World” → “wORLD hELLO”。题目要求时间、空间均为 O(n)。文中给出示例及 Java 解法,思路是使用 `split` 按空格切分(保留空串),从右向左遍历每个子串,利用 `Character.isUpperCase` 与 `toLowerCase`/`toUpperCase` 实现大小写转换并拼接空格,最终返回变形后的字符串。

本文介绍了 NC10 大数乘法题目:输入两个数字字符串,要求在 O(n) 空间、O(n²) 时间内返回它们的乘积字符串。示例说明了普通乘法和零的情况。提供的参考实现直接利用 Java 的 BigInteger 类,将字符串转换为大整数相乘后再转回字符串,满足题目要求。

本文介绍了“岛屿数量”问题:给定只含‘0’和‘1’的矩阵,‘1’表示陆地,上下左右相邻的‘1’构成同一岛屿,要求统计岛屿个数。文章给出示例输入输出,说明空矩阵、单元格和全连通情况的返回值。核心解法是遍历矩阵,遇到‘1’时计数并通过深度优先搜索(DFS)将该岛屿所有相邻的‘1’置为‘0’,防止重复计数。代码实现包括主函数 `solve` 统计岛屿数,以及递归的 `dfs` 完成四方向的扩展。整体思路简洁高效,时间复杂度为 O(n·m)。