草庐IT

leetCode

全部标签

二叉树的前序遍历(力扣144)

目录题目描述:解法一:递归法解法二:迭代法解法三:Morris遍历二叉树的前序遍历题目描述:给你二叉树的根节点 root ,返回它节点值的 前序 遍历。示例1:输入:root=[1,null,2,3]输出:[1,2,3]示例2:输入:root=[]输出:[]示例3:输入:root=[1]输出:[1]示例4:输入:root=[1,2]输出:[1,2]示例5:输入:root=[1,null,2]输出:[1,2]提示:树中节点数目在范围 [0,100] 内-100解法一:递归法Listres=newArrayList();publicListpreorderTraversal(TreeNoderoo

【Leetcode】题库-爽刷简单题(1)

目录写在前面:题目:67.二进制求和-力扣(Leetcode)解题思路:代码:过过过过过过啦!!!!题目:83.删除排序链表中的重复元素-力扣(Leetcode)解题思路:代码:过过过过过过啦!!!!写在最后:写在前面:无论是你学习累了,还是情绪低落,还是生活不如意,哪怕是失恋了,跟我一起,放下生活的担,打开LeetCode,点开题库,选择简单题,快点这个链接,和我一起享受刷题的快乐!题目:67.二进制求和-力扣(Leetcode)解题思路:这道题目其实就是,让我们用代码去模拟二进制的运算,那我们就想一想二进制该咋算,根据小学数学学的知识,要从左往右计算两数相加,当每一位相加的值大于进制,那就

【Leetcode】题库-爽刷简单题(1)

目录写在前面:题目:67.二进制求和-力扣(Leetcode)解题思路:代码:过过过过过过啦!!!!题目:83.删除排序链表中的重复元素-力扣(Leetcode)解题思路:代码:过过过过过过啦!!!!写在最后:写在前面:无论是你学习累了,还是情绪低落,还是生活不如意,哪怕是失恋了,跟我一起,放下生活的担,打开LeetCode,点开题库,选择简单题,快点这个链接,和我一起享受刷题的快乐!题目:67.二进制求和-力扣(Leetcode)解题思路:这道题目其实就是,让我们用代码去模拟二进制的运算,那我们就想一想二进制该咋算,根据小学数学学的知识,要从左往右计算两数相加,当每一位相加的值大于进制,那就

【LeetCode: 97. 交错字符串 | 暴力递归=>记忆化搜索=>动态规划 | 位置对应】

🚀算法题🚀🌲算法刷题专栏|面试必备算法|面试高频算法🍀🌲越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨🌲作者简介:硕风和炜,CSDN-Java领域优质创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎🌲恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻🌲人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯🚀算法题🚀🍔目录🚩题目链接⛲题目描述🌟求解思路&实现代码&运行结果⚡暴力法🥦求解思路🥦实现代码🥦运行结果⚡记忆化搜索🥦求解思路🥦实现代码🥦运行结果⚡动态规划🥦求解思路🥦实现代码🥦运行结果💬共勉🚩题目链接97

(单调栈) 496. 下一个更大元素 I——【Leetcode每日一题】

❓496.下一个更大元素I难度:简单nums1中数字x的下一个更大元素是指x在nums2中对应位置右侧的第一个比x大的元素。给你两个没有重复元素的数组nums1和nums2,下标从0开始计数,其中nums1是nums2的子集。对于每个0,找出满足nums1[i]==nums2[j]的下标j,并且在nums2确定nums2[j]的下一个更大元素。如果不存在下一个更大元素,那么本次查询的答案是-1。返回一个长度为nums1.length的数组ans作为答案,满足ans[i]是如上所述的下一个更大元素。示例1:输入:nums1=[4,1,2],nums2=[1,3,4,2].输出:[-1,3,-1]

(栈和队列) 150. 逆波兰表达式求值 ——【Leetcode每日一题】

❓150.逆波兰表达式求值难度:中等给你一个字符串数组tokens,表示一个根据逆波兰表示法表示的算术表达式。请你计算该表达式。返回一个表示表达式值的整数。注意:有效的算符为‘+’、‘-’、‘*’和‘/’。每个操作数(运算对象)都可以是一个整数或者另一个表达式。两个整数之间的除法总是向零截断。表达式中不含除零运算。输入是一个根据逆波兰表示法表示的算术表达式。答案及所有中间计算结果可以用32位整数表示。示例1:输入:tokens=[“2”,“1”,“+”,“3”,“*”]输出:9解释:该算式转化为常见的中缀算术表达式为:((2+1)*3)=9示例2:输入:tokens=[“4”,“13”,“5”

算法leetcode|54. 螺旋矩阵(rust重拳出击)

文章目录54.螺旋矩阵:样例1:样例2:提示:分析:题解:rust:go:c++:python:java:每次循环移动一步:每次循环完成一个顺时针:54.螺旋矩阵:给你一个m行n列的矩阵matrix,请按照顺时针螺旋顺序,返回矩阵中的所有元素。样例1:输入: matrix=[[1,2,3],[4,5,6],[7,8,9]] 输出: [1,2,3,6,9,8,7,4,5]样例2:输入: matrix=[[1,2,3,4],[5,6,7,8],[9,10,11,12]] 输出: [1,2,3,4,8,12,11,10,9,5,6,7]提示:m==matrix.lengthn==matrix

( 数组和矩阵) 697. 数组的度 ——【Leetcode每日一题】

❓697.数组的度难度:简单给定一个非空且只包含非负数的整数数组nums,数组的度的定义是指数组里任一元素出现频数的最大值。你的任务是在nums中找到与nums拥有相同大小的度的最短连续子数组,返回其长度。示例1:输入:nums=[1,2,2,3,1]输出:2解释:输入数组的度是2,因为元素1和2的出现频数最大,均为2。连续子数组里面拥有相同度的有如下所示:[1,2,2,3,1],[1,2,2,3],[2,2,3,1],[1,2,2],[2,2,3],[2,2]最短连续子数组[2,2]的长度为2,所以返回2。示例2:输入:nums=[1,2,2,3,1,4,2]输出:6解释:数组的度是3,因为

LeetCode 2409. Count Days Spent Together【前缀和,容斥原理】简单

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

(双指针 ) 18. 四数之和 ——【Leetcode每日一题】

❓18.四数之和难度:中等给你一个由n个整数组成的数组nums,和一个目标值target。请你找出并返回满足下述全部条件且不重复的四元组[nums[a],nums[b],nums[c],nums[d]](若两个四元组元素一一对应,则认为两个四元组重复):0a、b、c和d互不相同nums[a]+nums[b]+nums[c]+nums[d]==target你可以按任意顺序返回答案。示例1:输入:nums=[1,0,-1,0,-2,2],target=0输出:[[-2,-1,1,2],[-2,0,0,2],[-1,0,0,1]]示例2:输入:nums=[2,2,2,2,2],target=8输出: