草庐IT

LeetCode-LCR

全部标签

LeetCode刷题之树

关于二叉树的题,几乎都会用到递归的解法来做。树用到节点TreeNode类:publicclassTreeNode{intval;TreeNodeleft;TreeNoderight;TreeNode(intx){val=x;}}104.二叉树的最大深度给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明:叶子节点是指没有子节点的节点。示例:给定二叉树[3,9,20,null,null,15,7],3/920/157返回它的最大深度3。题解:classSolution{/***节点为空时说明高度为0,所以返回0;节点不为空时则分别求左右子树的高度的最大值,

LeetCode 周赛 335,纯纯手速场!

大家好,我是小彭。昨晚是LeetCode第335场周赛,你参加了吗?这场周赛整体难度不高,有两道模板题,第三题和第四题应该调换一下位置。2582.递枕头(Easy)题目地址https://leetcode.cn/problems/pass-the-pillow/题目描述n个人站成一排,按从1到n编号。最初,排在队首的第一个人拿着一个枕头。每秒钟,拿着枕头的人会将枕头传递给队伍中的下一个人。一旦枕头到达队首或队尾,传递方向就会改变,队伍会继续沿相反方向传递枕头。例如,当枕头到达第n个人时,TA会将枕头传递给第n-1个人,然后传递给第n-2个人,依此类推。给你两个正整数n和time,返回t题解一(

LeetCode - #66 加一

前言我们社区陆续会将顾毅(Netflix增长黑客,《iOS面试之道》作者,ACE职业健身教练。)的Swift算法题题解整理为文字版以方便大家学习与阅读。LeetCode算法到目前我们已经更新了65期,我们会保持更新时间和进度(周一、周三、周五早上9:00发布),每期的内容不多,我们希望大家可以在上班路上阅读,长久积累会有很大提升。不积跬步,无以至千里;不积小流,无以成江海,Swift社区伴你前行。如果大家有建议和意见欢迎在文末留言,我们会尽力满足大家的需求。难度水平:简单1.描述给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位,数组中每个元素只存储单

图解LeetCode——481. 神奇字符串(难度:中等)

一、题目神奇字符串s仅由'1'和'2'组成,并需要遵守下面的规则:神奇字符串s的神奇之处在于,串联字符串中'1'和'2'的连续出现次数可以生成该字符串。s的前几个元素是s="1221121221221121122……"。如果将s中连续的若干1和2进行分组,可以得到"1221121221221121122......"。每组中1或者2的出现次数分别是"122112122122......"。上面的出现次数正是s自身。给你一个整数n,返回在神奇字符串s的前n个数字中1的数目。二、示例2.1>示例1:【输入】n=6【输出】3【解释】神奇字符串s的前6个元素是“122112”,它包含三个1,因此返回3

LeetCode 2605. Form Smallest Number From Two Digit Arrays【数组,哈希表,枚举;位运算】1241

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章中,我不仅会讲解多种解题思路及其优化,还会用多种编程语言实现题解,涉及到通用解法时更将归纳总结出相应的算法模板。为了方便在PC上运行调试、分享代码文件,我还建立了相关的仓库:https://github.com/memcpy0/LeetCode-Conquest。在这一仓库中,你不仅可以看到LeetCode原题链接、题解代码、题解文章链接、同类题目

LeetCode #1131 Maximum of Absolute Value Expression 绝对值表达式的最大值

1131MaximumofAbsoluteValueExpression绝对值表达式的最大值Description:Giventwoarraysofintegerswithequallengths,returnthemaximumvalueof:|arr1[i]-arr1[j]|+|arr2[i]-arr2[j]|+|i-j|wherethemaximumistakenoverall0Example:Example1:Input:arr1=[1,2,3,4],arr2=[-1,4,5,6]Output:13Example2:Input:arr1=[1,-2,-5,0,10],arr2=[0,-

leetcode算法—236 二叉树的最近公共祖先(中等)

236.二叉树的最近公共祖先给定一个二叉树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树T的两个结点p、q,最近公共祖先表示为一个结点x,满足x是p、q的祖先且x的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树:root=[3,5,1,6,2,0,8,null,null,7,4]一棵调皮的二叉树1.总结二叉树算法的核心就是遍历(前中后序遍历算法)p、q两个节点如何在二叉树上定位到(前序遍历);若找到最近公共祖先,那么必须处理完左右节点后才能得到父节点(后序遍历)源代码:publicclassTreeNode{intval;TreeNo

LeetCode力扣 精选数据库70题 (SQL自学记录)

目录512.游戏玩法分析II534.游戏玩法分析III550.游戏玩法分析IV 重难点569.员工薪水中位数578.查询回答率最高的问题  重难点579.查询员工的累计薪水584ifnull的用法5852016的投资597好友申请总通过率602好友申请607销售员614二级关注者617平均工资:部门与公司比较618学生地理位置511写一条SQL查询语句获取每位用户第一次登陆平台的日期。题目解答思路:可以用窗口函数;也可以用最小值函数min##最小函数selectplayer_id,min(event_date)asfirst_loginfromActivitygroupbyplayer_id#

【LeetCode】剑指 Offer <二刷>(2)

目录题目:剑指Offer04.二维数组中的查找-力扣(LeetCode)题目的接口:解题思路:代码:过啦!!!题目:剑指Offer05.替换空格-力扣(LeetCode)题目的接口:解题思路:代码:过啦!!!写在最后:题目:剑指Offer04.二维数组中的查找-力扣(LeetCode)题目的接口:funcfindNumberIn2DArray(matrix[][]int,targetint)bool{}解题思路:这道题一上来呢,作为暴力选手还是能一下想到暴力解法的,就是直接暴力枚举全部值查找即可,不过这道题非常的经典,所以我也直接能够想到他的优化解法,至于我是怎么想到的,做的题多自然就能想到了

LeetCode 1.两数之和

给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定nums=[2,7,11,15],target=9因为nums[0]+nums[1]=2+7=9所以返回[0,1]Python最容易想到的方法是枚举数组中的每一个数x,寻找数组中是否存在target-x当我们使用遍历整个数组的方式寻找target-x时,需要注意到每一个位于x之前的元素都已经和x匹配过,因此不需要再进行匹配。而每一个元素不能被使用两次,所以我们只需要在x后面的元素中寻找targe