12 2020 档案

摘要:题目: 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2. 2 阶 示例 2: 输入: 3 输出: 阅读全文
posted @ 2020-12-29 16:47 堤苏白 阅读(90) 评论(0) 推荐(0) 编辑
摘要:题目: 给你两个二进制字符串,返回它们的和(用二进制表示)。 输入为 非空 字符串且只包含数字 1 和 0。 示例 1: 输入: a = "11", b = "1" 输出: "100" 示例 2: 输入: a = "1010", b = "1011" 输出: "10101" 提示: 每个字符串仅由字 阅读全文
posted @ 2020-12-27 19:41 堤苏白 阅读(64) 评论(0) 推荐(0) 编辑
摘要:题目: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径? 网格中的障碍物和空位置分别用 1 阅读全文
posted @ 2020-12-26 21:41 堤苏白 阅读(68) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 示例 1: 输入:grid = [[1,3,1],[1,5,1],[4,2,1]] 输出:7 解释:因为路径 1→3→1→1→1 的总和 阅读全文
posted @ 2020-12-26 21:04 堤苏白 阅读(66) 评论(0) 推荐(0) 编辑
摘要:题目: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径? 示例 1: 输入:m = 3, n = 7 输出:28 示例 2: 阅读全文
posted @ 2020-12-26 19:57 堤苏白 阅读(93) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL 解释: 向右旋转 1 步: 5->1->2->3->4->NULL 向右旋转 2 步: 阅读全文
posted @ 2020-12-25 20:43 堤苏白 阅读(91) 评论(0) 推荐(0) 编辑
摘要:题目: 给出集合 [1,2,3,...,n],其所有元素共有 n! 种排列。 按大小顺序列出所有排列情况,并一一标记,当 n = 3 时, 所有排列如下: "123" "132" "213" "231" "312" "321" 给定 n 和 k,返回第 k 个排列。 示例 1: 输入:n = 3, 阅读全文
posted @ 2020-12-25 19:28 堤苏白 阅读(108) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] ] 代码: 1 class Solution { 2 public int[][] 阅读全文
posted @ 2020-12-24 19:31 堤苏白 阅读(81) 评论(0) 推荐(0) 编辑
摘要:题目: 给出一个无重叠的 ,按照区间起始端点排序的区间列表。 在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。 示例 1: 输入:intervals = [[1,3],[6,9]], newInterval = [2,5] 输出:[[1,5],[6, 阅读全文
posted @ 2020-12-23 21:39 堤苏白 阅读(71) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 1: 输入: [2,3,1,1,4] 输出: true 解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达 阅读全文
posted @ 2020-12-23 20:45 堤苏白 阅读(65) 评论(0) 推荐(0) 编辑
摘要:题目: 给出一个区间的集合,请合并所有重叠的区间。 示例 1: 输入: intervals = [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6]. 示例 2: 输 阅读全文
posted @ 2020-12-23 19:48 堤苏白 阅读(92) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 示例 1: 输入: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] 输出: [1,2,3,6,9,8,7,4,5] 示例 2: 输入: [ [1, 2, 阅读全文
posted @ 2020-12-21 17:11 堤苏白 阅读(121) 评论(0) 推荐(0) 编辑
摘要:题目:n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 上图为 8 皇后问题的一种解法。 给定一个整数 n,返回 n 皇后不同的解决方案的数量。 示例: 输入: 4 输出: 2 解释: 4 皇后问题存在如下两个不同的解法。 [ [".Q..", // 阅读全文
posted @ 2020-12-21 11:00 堤苏白 阅读(45) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。 最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例 1: 输入:digits = [1,2,3] 输出:[1,2,4] 解释:输入数组表示数字 1 阅读全文
posted @ 2020-12-20 21:41 堤苏白 阅读(48) 评论(0) 推荐(0) 编辑
摘要:题目:n 皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 上图为 8 皇后问题的一种解法。 给定一个整数 n,返回所有不同的 n 皇后问题的解决方案。 每一种解法包含一个明确的 n 皇后问题的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空 阅读全文
posted @ 2020-12-20 20:18 堤苏白 阅读(84) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。 示例 1: 给定 matrix = [ [1,2,3], [4,5,6], [7,8,9] ], 原地旋转输入矩阵 阅读全文
posted @ 2020-12-19 19:59 堤苏白 阅读(79) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。 示例: 输入: ["eat", "tea", "tan", "ate", "nat", "bat"] 输出: [ ["ate","eat","tea"], ["nat","tan"], ["bat"] ] 阅读全文
posted @ 2020-12-19 17:46 堤苏白 阅读(121) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个仅包含大小写字母和空格 ' ' 的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。 如果不存在最后一个单词,请返回 0 。说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。 示例: 输入: "Hello World 阅读全文
posted @ 2020-12-17 14:09 堤苏白 阅读(52) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums = [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1,1]] 示例 2: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3] 阅读全文
posted @ 2020-12-17 12:12 堤苏白 阅读(106) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个 没有重复 数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ] 代码: class Solution { public List<List<Int 阅读全文
posted @ 2020-12-17 12:06 堤苏白 阅读(84) 评论(0) 推荐(0) 编辑
摘要:题目:给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入: num1 = "2", num2 = "3" 输出: "6" 示例 2: 输入: num1 = "123", num2 = "456" 输出: 阅读全文
posted @ 2020-12-16 12:22 堤苏白 阅读(55) 评论(0) 推荐(0) 编辑
摘要:题目:给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height = [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况 阅读全文
posted @ 2020-12-16 10:55 堤苏白 阅读(72) 评论(0) 推荐(0) 编辑
摘要:题目:给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数。 示例 1: 输入: [1,2,0] 输出: 3 示例 2: 输入: [3,4,-1,1] 输出: 2 示例 3: 输入: [7,8,9,11,12] 输出: 1 思路: //把小于nums.length的值放到与下标对应,结束后 阅读全文
posted @ 2020-12-15 13:17 堤苏白 阅读(115) 评论(0) 推荐(0) 编辑
摘要:题目:编写一个程序,通过填充空格来解决数独问题。 一个数独的解法需遵循如下规则: 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。 空白格用 '.' 表示。 提示: 给定的数独序列只包含数字 1-9 和字符 阅读全文
posted @ 2020-12-14 10:34 堤苏白 阅读(163) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的每个数字在每个组合中只能使用一次。 说明:与39题不同之处:数字使用次数与数组是否有重复元素 相同点是:相同数字列表的不同排列视为 阅读全文
posted @ 2020-12-13 17:08 堤苏白 阅读(73) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 说明: 所有数字(包括 target)都是正整数。 解集不能包含重复的组合。 示例 1: 阅读全文
posted @ 2020-12-13 16:29 堤苏白 阅读(67) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个正整数 n ,输出外观数列的第 n 项。 「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。 你可以将其视作是由递归公式定义的数字字符串序列: countAndSay(1) = "1" countAndSay(n) 是对 countAndSay(n-1) 阅读全文
posted @ 2020-12-13 15:13 堤苏白 阅读(79) 评论(0) 推荐(0) 编辑
摘要:题目: 给你一个整数数组 nums ,和一个整数 target 。该整数数组原本是按升序排列,但输入时在预先未知的某个点上进行了旋转。(例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 请你在数组中搜索 target ,如果数组中存在这个目标值,则返回它的索 阅读全文
posted @ 2020-12-12 21:25 堤苏白 阅读(68) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 进阶: 你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗? //二分查找法 示例 1: 输入: 阅读全文
posted @ 2020-12-12 21:11 堤苏白 阅读(53) 评论(0) 推荐(0) 编辑
摘要:题目:判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。 示例 1: 输入: [ ["5","3",".",".","7" 阅读全文
posted @ 2020-12-12 19:14 堤苏白 阅读(91) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5 输出: 2 代码: class Solution { public int searchIns 阅读全文
posted @ 2020-12-12 12:45 堤苏白 阅读(52) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个二叉树的根节点 root ,返回它的 中序 遍历。 示例1: 输入:root = [1,null,2,3] 输出:[1,3,2] 代码: /** Definition for a binary tree node. public class TreeNode { int val; T 阅读全文
posted @ 2020-12-11 15:43 堤苏白 阅读(62) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个字符串 s 和一些长度相同的单词 words。找出 s 中恰好可以由 words 中所有单词串联形成的子串的起始位置。 注意子串要与 words 中的单词完全匹配,中间不能有其他字符,但不需要考虑 words 中单词串联的顺序。 示例 1: 输入: s = "barfoothefoob 阅读全文
posted @ 2020-12-09 20:35 堤苏白 阅读(88) 评论(0) 推荐(0) 编辑
摘要:题目: 给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数 dividend 除以除数 divisor 得到的商。 整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 阅读全文
posted @ 2020-12-09 18:21 堤苏白 阅读(80) 评论(0) 推荐(0) 编辑
摘要:题目:实现 strStr() 函数。给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 输入: haystack = "hello", needle = "ll 阅读全文
posted @ 2020-12-09 17:36 堤苏白 阅读(35) 评论(0) 推荐(0) 编辑
摘要:题目: 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 给定 nums = 阅读全文
posted @ 2020-12-09 11:21 堤苏白 阅读(55) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 示例 2: 给定 nums = [0,0,1,1,1,2,2,3,3,4], 函数应该返回 阅读全文
posted @ 2020-12-09 10:57 堤苏白 阅读(45) 评论(0) 推荐(0) 编辑
摘要:题目: 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 示例: 给你这个链表:1->2->3->4->5 当 k = 2 时,应当返回: 2->1->4->3->5 阅读全文
posted @ 2020-12-08 18:20 堤苏白 阅读(75) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例 1: 输入:head = [1,2,3,4] 输出:[2,1,4,3] 示例 2: 输入:head = [] 输出:[] 示例 3: 输入:head = [1] 阅读全文
posted @ 2020-12-07 17:18 堤苏白 阅读(26) 评论(0) 推荐(0) 编辑
摘要:![](https://img2020.cnblogs.com/blog/2211105/202012/2211105-20201207164011361-1787118023.png) 阅读全文
posted @ 2020-12-07 16:41 堤苏白 阅读(83) 评论(0) 推荐(0) 编辑
摘要:题目:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 1: 输入: "babad" 输出: "bab" 注意: "aba" 也是一个有效答案。 示例 2: 输入: "cbbd" 输出: "bb" 代码: 暴力法: 超时 class Solution { 阅读全文
posted @ 2020-12-05 12:40 堤苏白 阅读(176) 评论(0) 推荐(0) 编辑
摘要:题目: 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 代码: /** Definition for singly-linked list. public cla 阅读全文
posted @ 2020-12-05 10:15 堤苏白 阅读(36) 评论(0) 推荐(0) 编辑
摘要:###题目: 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 1: 输入: "()" 输出: true 示例 2: 输入: 阅读全文
posted @ 2020-12-04 21:10 堤苏白 阅读(82) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 代码: /** Definition for singly-linked list. pub 阅读全文
posted @ 2020-12-04 10:52 堤苏白 阅读(62) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。 答案中不可以包含重复的四元组。 示例: 给定数组 nums = [ 阅读全文
posted @ 2020-12-03 19:01 堤苏白 阅读(69) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 思路:回溯法 代码: class Solution { public List letterCombinations(String digits) { 阅读全文
posted @ 2020-12-03 14:47 堤苏白 阅读(91) 评论(0) 推荐(0) 编辑
摘要:题目: 给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。 思路:在15题基础上进行修改。增加变量temp最接近程度,aabs当前接近程度。 代码: class S 阅读全文
posted @ 2020-12-03 10:21 堤苏白 阅读(75) 评论(0) 推荐(0) 编辑
摘要:题目: 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 思路: 先排序,再使用双指针,i⬅0 to n-2,j⬅i+1 to n-1,k⬅n- 阅读全文
posted @ 2020-12-02 20:43 堤苏白 阅读(70) 评论(0) 推荐(0) 编辑
摘要:题目:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: ["flower","flow","flight"] 输出: "fl" 示例 2: 输入: ["dog","racecar","car"] 输出: "" 解释: 输入不存在公共前缀。 代 阅读全文
posted @ 2020-12-01 21:02 堤苏白 阅读(59) 评论(0) 推荐(0) 编辑
摘要:题目: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX 阅读全文
posted @ 2020-12-01 08:06 堤苏白 阅读(150) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示