![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Leetcode
文章平均质量分 69
Windows_Defender
这个人很懒,什么都没有留下~
展开
-
Leetcode49--字母异位词分组
给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"],输出:[ ["ate","eat","tea"], ["nat","tan"], ["bat"]]思路: 没什么可说的,直接是先将各个字符串内部按照字典排序(开辟额外空间),然...原创 2019-11-07 13:43:40 · 218 阅读 · 0 评论 -
Leetcode22--括号生成
题目描述:给出n代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出n=3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]思路:很明显应该利用递归来解决---即回溯。n对括号意味着左右括号各有n个,递归出口很明显是当代表左右的计数变量l...原创 2019-10-22 18:01:35 · 201 阅读 · 0 评论 -
leetcode--89 格雷编码
格雷编码是一个二进制数字系统,在该系统中,两个连续的数值仅有一个位数的差异。给定一个代表编码总位数的非负整数 n,打印格雷码序列。格雷码序列必须以 0 开头。例如,给定 n = 2,返回 [0,1,3,2]。其格雷编码是:00 - 001 - 111 - 310 - 2说明:对于给定的 n,其格雷编码的顺序并不唯一。例如 [0,2,3,1] 也是一个有效的格雷编码顺序。题意很好理解,但相关...原创 2018-06-14 19:46:13 · 1058 阅读 · 0 评论 -
Leetcode--60 第k个排列
题干:给出集合 [1,2,3,…,n],其所有元素共有 n! 种排列。按大小顺序列出所有排列情况,并一一标记,当 n = 3 时, 所有排列如下:"123" "132" "213" "231" "312" "321"给定 n 和 k,返回第 k 个排列。说明:给定 n 的范围是 [1, 9]。 给定 k 的范围是[1, n!]。示例 1:输入:原创 2018-09-16 00:25:37 · 405 阅读 · 0 评论 -
Leetcode--257 二叉树的所有路径
给定一个二叉树,返回所有从根节点到叶子节点的路径。说明: 叶子节点是指没有子节点的节点。示例:输入: 1 / \2 3 \ 5输出: ["1->2->5", "1->3"]解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3 首先要写一下我自己的错误的思路:利用回溯,到了叶子结点后将当前遍...原创 2018-09-20 21:45:49 · 285 阅读 · 0 评论 -
Leetcode--53 最大子序和
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 easy难度,当然也是一道比较典型的题。我们当然可以利用BF来得到目的值,但时间复杂度为O(n²),于是可以来考虑一个为O(n)的解法。首...原创 2018-10-20 21:45:08 · 130 阅读 · 0 评论 -
Leetcode102--二叉树的层次遍历
给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。例如:给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [9,20], [15,7]] 刚入门数据结构,掌握的少也不太好,加上比较笨结果这道题想了半天...原创 2018-10-23 21:06:27 · 147 阅读 · 0 评论 -
Leetcode--171 Excel表列序号
给定一个Excel表格中的列名称,返回其相应的列序号。例如, A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28 ...示例 1:输入: "A"输出: 1示例 2:输入: "AB"输出: 28示例 3:...原创 2018-11-21 21:23:06 · 141 阅读 · 0 评论 -
leetcode957(contest 113)--N 天后的牢房
这道是该场里边的第一道(菜,没做出来),当然确实比较难。从easy难度的角度出发我们一般都是想到用O(N²)的复杂度写一个更新函数,然后遍历到该天后返回,但提交后发现超时,且只有一个例子通过,到这时我们应该转换思路。题目告诉我们相当于共8个信号,因此有2的8次方共256种状态,所以当N足够大时,必然形成环(当然一般是局部的)。所以我们应该求出来该环,即一个二维数组,之后再通过数学计算将N缩小为...原创 2018-12-22 13:43:19 · 460 阅读 · 0 评论 -
Leetcode--93 复原IP地址
给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。示例:输入: "25525511135"输出:["255.255.11.135", "255.255.111.35"]首先我们要了解IP地址格式的要求:即是一个32位长的二进制数(默认为IPV4),共有四部分,每部分长8位。取值范围为0~255,因此问题就转换成为对字符串的分割问题。另外还要注意的是当一...原创 2019-05-20 18:17:58 · 257 阅读 · 0 评论 -
LeetCode--78 子集
Description:给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入: nums = [1,2,3]输出:[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], []]先考虑非递归方法,由离散数学的相关知识我们可以知道,一个n元的集合的幂集大小为2的n...原创 2018-06-21 23:51:04 · 223 阅读 · 0 评论 -
leetcode--203 删除链表中的节点
删除链表中等于给定值 val 的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5注意链表是乱序的,而且节点值为val的可能有多个这道easy题想了半天,还是没有做出来。最开始想的是按照之前的链表题那样利用pre和cur两个指针两个指针,前者所经过的为已经去掉了待删除节点的...原创 2018-06-11 22:48:17 · 537 阅读 · 0 评论 -
leetcode-31 下一个排列
Eng version:Implement next permutation, which rearranges numbers into the lexicographically next greater permutation of numbers.If such arrangement is not possible, it must rearrange it as the lowest ...原创 2018-04-15 18:32:57 · 913 阅读 · 0 评论 -
leetcode-49 Group Anagrams(字母异位词分组)
Descripiton:给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"],输出:[ ["ate","eat","tea"], ["nat","tan&qu转载 2018-04-30 21:46:39 · 840 阅读 · 0 评论 -
leetcode-830 Positions of Large Groups
Description:In a string S of lowercase letters, these letters form consecutive groups of the same character.For example, a string like S = "abbxxxxzyy" has the groups "a", "bb", "xxxx", "z" and "yy&quo转载 2018-05-08 22:36:27 · 561 阅读 · 0 评论 -
leetcode-66 加一
给定一个非负整数组成的非空数组,在该数的基础上加一,返回一个新的数组。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321。即将该数看成一个整数...原创 2018-04-24 23:35:47 · 171 阅读 · 0 评论 -
leetcode--62 不同路径
Description:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?例如,上图是一个7 x 3 的网格。有多少可能的路径?说明:m 和 n 的值均不超过 100。示例 1:输入: m = 3, n = 2输出: 3解释:从左上...原创 2018-05-18 23:37:50 · 259 阅读 · 0 评论 -
leetcode--71 简化路径
Description:给定一个文档 (Unix-style) 的完全路径,请进行路径简化。例如,path = "/home/", => "/home"path = "/a/./b/../../c/", => "/c"边界情况:你是否考虑了 路径 = "/../" 的情况?在这种情况下,你需返回 "/" 。此外,路径中也可能包含多个斜杠 '/' ,如 "转载 2018-05-18 23:57:16 · 359 阅读 · 0 评论 -
leetcode--29 两数相除
Description: 给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。示例 1:输入: dividend = 10, divisor = 3输出: 3示例 2:输入: dividend = 7, divisor = -3输出:...原创 2018-05-25 01:13:49 · 4044 阅读 · 1 评论 -
leetcode--61 旋转链表
Deciription:给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转原创 2018-05-14 23:05:12 · 704 阅读 · 0 评论 -
leetcode--10 正则表达式匹配
Description: 给定一个字符串 (s) 和一个字符模式 (p)。实现支持 '.' 和 '*' 的正则表达式匹配。'.' 匹配任意单个字符。'*' 匹配零个或多个前面的元素。匹配应该覆盖整个字符串 (s) ,而不是部分字符串。说明:s 可能为空,且只包含从 a-z 的小写字母。 p 可能为空,且只包含从 a-z 的小写字母,以及字符 . 和 *。示例 1:...原创 2018-05-23 00:03:20 · 816 阅读 · 0 评论 -
Leetcode之正则表达式匹配(Regular Expression)
先上代码:class Solution {public: bool isMatch(string s, string p) { if (p.empty()) //如果p为空的话返回值也为空 if ('*' == p[1])//如果下一个字符('*'不能出现在字符串的开头)为'*' // x* matches empty str...转载 2018-12-02 17:28:09 · 301 阅读 · 0 评论