随笔分类 - 刷题笔记
保持每天刷题,记录笔记。
摘要:题目:给定一个 没有重复数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ] 分析: 求给定一组数的全排列,也就是排列组合问题,所以属于Backtracking(
阅读全文
摘要:题目: 给定一个二维网格和一个单词,找出该单词是否存在于网格中。 单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。 示例: board = [ ['A','B','C','E'], ['S','F','C'
阅读全文
摘要:题目: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例: 输入:"23" 输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"]. 分析: 这
阅读全文
摘要:题目: 给定一个 m x n 的非负整数矩阵来表示一片大陆上各个单元格的高度。“太平洋”处于大陆的左边界和上边界,而“大西洋”处于大陆的右边界和下边界。规定水流只能按照上、下、左、右四个方向流动,且只能从高到低或者在同等高度上流动。请找出那些水流既可以流动到“太平洋”,又能流动到“大西洋”的陆地单元
阅读全文
摘要:题目: 给定一个二维的矩阵,包含 'X' 和 'O'(字母 O)。 找到所有被 'X' 围绕的区域,并将这些区域里所有的 'O' 用 'X' 填充。 示例: X X X X X O O X X X O X X O X X 运行你的函数后,矩阵变为: X X X X X X X X X X X X X
阅读全文
摘要:题目: 班上有N名学生。其中有些人是朋友,有些则不是。他们的友谊具有是传递性。如果已知A是B的朋友,B是C的朋友,那么我们可以认为A也是C的朋友。所谓的朋友圈,是指所有朋友的集合。 给定一个N * N的矩阵M,表示班级中学生之间的朋友关系。如果M[i][j] = 1,表示已知第 i 个和 j 个学生
阅读全文
摘要:题目: 给你一个由 '1'(陆地)和 '0'(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。 示例: 输入: 11110 11010 11000 00000 输出: 1 分析: 这
阅读全文
摘要:题目: 给定一个包含了一些 0 和 1 的非空二维数组 grid 。 一个 岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直方向上相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。 找到给定的二维数组中最大的岛屿面积。(如果没有岛屿,则
阅读全文
摘要:题目: 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 示例1: 输入: n = 12 输出: 3 解释: 12 = 4 + 4 + 4. 示例2: 输入: n = 13 输出: 2 解释: 13 = 4 +
阅读全文
摘要:题目: 给定两个单词(beginWord 和 endWord)和一个字典,找到从 beginWord 到 endWord 的最短转换序列的长度。转换需遵循如下规则: 每次转换只能改变一个字母。 转换过程中的中间单词必须是字典中的单词。说明: 如果不存在这样的转换序列,返回 0。 所有单词具有相同的长
阅读全文
摘要:题目: 在一个 N × N 的方形网格中,每个单元格有两种状态:空(0)或者阻塞(1)。 一条从左上角到右下角、长度为 k 的畅通路径,由满足下述条件的单元格 C_1, C_2, ..., C_k 组成: 相邻单元格 C_i 和 C_{i+1} 在八个方向之一上连通(此时,C_i 和 C_{i+1}
阅读全文
摘要:题目 给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。 示例: 输入: [1,2,3,4] 输出: [24,12,8,6] 提示:题目数据保证数组之中任意元素的全部前缀元素
阅读全文
摘要:题目: 给定一个正整数 num,编写一个函数,如果 num 是一个完全平方数,则返回 True,否则返回 False。 说明:不要使用任何内置的库函数,如 sqrt。 分析: 这个题是一个简单题,通过循环能够很容易的做出来,但是如果只用简单的循环去判断是否是完全平方数会超出时间限制,也就是说这样的方
阅读全文
摘要:题目: 给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。 分析: 1、多数元素即在一组数中出现次数大于 ⌊ n/2 ⌋ 的元素 2、多数元素在这个数组中一定存在 这两个条件就决定了这种多
阅读全文
摘要:试想两个人,在一条无限长的直线上的两个不同位置,两个人怎么做才能走最少的步数相遇,那就是两个面对面同时朝着对方走,就可以以最少的步数相遇。那么,来看一下这个题: 题目: 给定一个非空整数数组,找到使所有数组元素相等所需的最小移动数,其中每次移动可将选定的一个元素加1或减1。 您可以假设数组的长度最多
阅读全文
摘要:题目: 给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。 注意: num1 和num2 的长度都小于 5100.num1 和num2 都只包含数字 0-9.num1 和num2 都不包含任何前导零。你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数
阅读全文
摘要:题目: 给你两个二进制字符串,返回它们的和(用二进制表示)。 输入为非空字符串且只包含数字 1 和 0。 示例1: 输入: a = "11", b = "1" 输出: "100" 示例2: 输入: a = "1010", b = "1011" 输出: "10101" 分析: 其实就是两个二进制数的加
阅读全文
摘要:题目 给定一个整数 n,返回 n! 结果尾数中零的数量。 分析: 求尾数为0的个数,那就要分析如何才能使得尾数会有0,其实就是在求阶乘运算的过程中存在10这个因子,继续分解,实质就是存在2和5这两个因子,有多少个2*5,则结尾就会有多少个0,而2*5个的个数,其实受限于5的个数,因为2是一个较小的值
阅读全文
摘要:题目:给定一个正整数,返回它在 Excel 表中相对应的列名称。 例如, 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB ... 分析:其实就是一个十进制转换为二十六进制数的问题,只不过是现在需要注意,没有从0开始了,而是从1开始,到26结束,对
阅读全文
摘要:我们曾在《计算机组成原理》这门课中学习过进制转换的相关知识,在这之前,我们应该首先了解一下原码、反码和补码。根据我们以前在《计算机组成原理》学到的知识,我们知道对于正数和负数,他们的原码、反码、补码是不一样的。 一、原码、反码、补码 对于正数而言,原码、反码、补码都是一样的,其中最高位表示符号位,因
阅读全文

浙公网安备 33010602011771号