![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
Statusxuan
这个作者很懒,什么都没留下…
展开
-
leetcode连续数组系列
一、前缀和560:和为k的子数组给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数>组的个数。示例 1 :输入:nums = [1,1,1], k = 2 输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。这道题暴力的解法就是先保存数组的前缀和,然后遍历差分,求所有和为K的子数组,时间复杂度为O(n^2)。一次遍历的解法:遍历求前缀和,利用HashMap将所有前缀和的次数保存起来,遍历到某个前缀和sum时,判断map中是否存在sum-k,如果有,说明原创 2020-06-06 18:50:24 · 439 阅读 · 0 评论 -
leetcode104[二叉树的层次遍历]
给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)例如:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其自底向上的层次遍历为:[ [15,7], [9,20], [3]]思路:利用栈和队列的性质。根节点不为空...原创 2019-12-14 15:18:55 · 109 阅读 · 0 评论 -
leetcode101[对称二叉树]
判断一个二叉树是不是镜像对称的,比如下面的二叉树就是镜像对称的。可以用递归的方法判断,当每一个节点的左子节点和右子节点相等时,根据镜像规则,递归向下判断左子节点的左子树和右子节点的右子树,左子节点的右子树和右子节点的左子树,同为null时,遍历结束,返回True。否则节点镜像不对称,地柜终止,返回false。/** * Definition for a binary tree no...原创 2019-10-03 18:56:38 · 98 阅读 · 0 评论 -
leetcode104[二叉树的最大深度]
给定一个二叉树,求出其最大的深度,也就是根节点到叶子节点的距离。首先想到的是用递归的方法,依次求出每一个节点的最大深度直到叶子结点。每一个节点的最大深度都是左右子树较大的深度再加当前深度1,即每次递归返回Max(left,right)+1,叶子结点也就是递归结束条件,返回0。这有点像动态规划,代码如下:/** * Definition for a binary tree node. * ...原创 2019-10-03 16:55:25 · 187 阅读 · 0 评论 -
为什么补码是按位取反再加一
今天刷LeetCode的位运算专题,想到机器做减法是加其补码来计算的。我们都知道求补码的方法是“按位取反再加一”,但是为什么呢?看了几篇文章,最经典的总结就一句话,正数原码+其负数的补码(以下简称补码)=0,正数+其负数的反码(以下简称反码)+1=0,即补码=反码+1。在机器码中最高位为符号位。以btye类型为例,最高位为符号位,其余七位数值位。当11111111(-127)加1得到的是000...原创 2019-09-25 09:40:12 · 3526 阅读 · 1 评论 -
leetcode5[Longest Palindromic Substring]
最长回文子串问题,题目描述:给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为 1000。所谓回文串,就是指一个字符串正序和倒序完全一致,必须"aba","baab"等,本题求的是一个字符串最长的回文子串,比如"aabbaccddcc"的最长回文子串就是"ccddcc"。首先想到的是暴力解法,遍历每一个字符作为子串的开端,字符串从后往前的每一个字符作为子串的结尾,...原创 2019-08-10 23:48:47 · 114 阅读 · 0 评论 -
leetcode746[Min Cost Climbing Stairs]
使用最小花费爬楼梯,题目描述如下:数组的每个索引做为一个阶梯,第i个阶梯对应着一个非负数的体力花费值cost[i](索引从0开始)。每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯。您需要找到达到楼层顶部的最低花费。在开始时,你可以选择从索引为 0 或 1 的元素作为初始阶梯。比如[1,100,1,1]对应的最小花费就是1+1=2,[1...原创 2019-08-04 23:03:59 · 98 阅读 · 0 评论 -
leetcode198[House Robber]
题目描述:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。意思就是非相邻的数字累加的最大值,比如输入是[1,2,3,4],那么最大金额就是2+4=6,[1...原创 2019-07-31 14:26:50 · 127 阅读 · 0 评论 -
leetcode70[Climbing stairs]
爬楼梯问题,描述如下:You are climbing a staircase. It takes n steps to reach to the top.Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?Note: Given n will b...原创 2019-07-30 22:08:33 · 133 阅读 · 0 评论 -
leetcode20[Valid Parentheses]
括号配对问题,题目如下:Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.An input string is valid if:Open brackets must be closed by the s...原创 2019-07-29 12:35:11 · 122 阅读 · 0 评论