E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
leetcode-初级算法
【
LeetCode-
面试经典150题-day16】
目录114.二叉树展开为链表112.路径总和129.求根节点到叶节点数字之和124.二叉树中的最大路径和114.二叉树展开为链表题意:给你二叉树的根结点root,请你将它展开为一个单链表:展开后的单链表应该同样使用TreeNode,其中right子指针指向链表中下一个结点,而左子指针始终为null。展开后的单链表应该与二叉树先序遍历顺序相同。【输入样例】root=[1,2,5,3,4,6]【输出样
badgirl-bb
·
2023-08-29 02:13
LeetCode
算法
leetcode
java
面试
【
LeetCode-
面试经典150题-day15】
目录104.二叉树的最大深度100.相同的树226.翻转二叉树101.对称二叉树105.从前序与中序遍历序列构造二叉树106.从中序与后序遍历序列构造二叉树117.填充每个节点的下一个右侧节点指针Ⅱ104.二叉树的最大深度题意:给定一个二叉树root,返回其最大深度。二叉树的最大深度是指从根节点到最远叶子节点的最长路径上的节点数。【输入样例】root=[3,9,20,null,null,15,7]
badgirl-bb
·
2023-08-29 02:42
LeetCode
leetcode
面试
算法
java
Leetcode-
每日一题【剑指 Offer 37. 序列化二叉树】
题目请实现两个函数,分别用来序列化和反序列化二叉树。你需要设计一个算法来实现二叉树的序列化与反序列化。这里不限定你的序列/反序列化算法执行逻辑,你只需要保证一个二叉树可以被序列化为一个字符串并且将这个字符串反序列化为原始的树结构。提示:输入输出格式与LeetCode目前使用的方式一致,详情请参阅LeetCode序列化二叉树的格式。你并非必须采取这种方式,你也可以采用其他的方法解决这个问题。示例:输
jiaoer~~
·
2023-08-28 18:08
leetcode
算法
职场和发展
java
Leetcode-
每日一题【剑指 Offer 36. 二叉搜索树与双向链表】
题目输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的循环双向链表。要求不能创建任何新的节点,只能调整树中节点指针的指向。为了让您更好地理解问题,以下面的二叉搜索树为例:我们希望将这个二叉搜索树转化为双向循环链表。链表中的每个节点都有一个前驱和后继指针。对于双向循环链表,第一个节点的前驱是最后一个节点,最后一个节点的后继是第一个节点。下图展示了上面的二叉搜索树转化成的链表。“head”表示指向链表
jiaoer~~
·
2023-08-28 18:06
leetcode
算法
职场和发展
java
数据结构
【
LeetCode-
中等题】138. 复制带随机指针的链表
文章目录题目解题核心思路:找random指针指向思路一:哈希思路二:迭代构造新链表方法一:哈希+递归方法二:纯哈希方法三:迭代+节点拆分题目解题核心思路:找random指针指向这里的拷贝属于深拷贝,就是不光是拷贝值,还要拷贝其指针的引用情况。如果只是单独的单向链表,则直接可以根据next指向找到下一个结点,然后创建一个新节点复制过来,直接拷贝,但是题目中的random指针指向的节点是没有归类的,这
今天你写代码了吗??
·
2023-08-28 17:29
力扣
#
中等题
leetcode
链表
算法
【
LeetCode-
中等题】24. 两两交换链表中的节点
文章目录题目方法一:递归方法二:三指针迭代题目方法一:递归图解:==详细版==publicListNodeswapPairs(ListNodehead){/*递归法:宗旨就是紧紧抓住原来的函数究竟返回的是什么?作用是什么即可其余的细枝末节不要细究,编译器会帮我们自动完成*///basecaseif(head==null||head.next==null)returnhead;//swapPairs
今天你写代码了吗??
·
2023-08-28 17:59
力扣
#
中等题
leetcode
链表
算法
【
LeetCode-
中等题】19. 删除链表的倒数第 N 个结点
文章目录题目方法一:节点加入集合找索引方法二:直接计算长度,然后找出要删除的节点的前一个节点方法三:栈方法四:前后双指针题目这题的关键在与两个点一定要设置一个哑结点,防止删除第一个元素时,导致空指针异常删除链表的元素其实就等价于找到这个元素的前一个元素方法一:节点加入集合找索引先将ListNode存到list然后直接找到要删除节点的前一个节点即可(node.next=node.next.next)
今天你写代码了吗??
·
2023-08-28 17:58
力扣
#
中等题
leetcode
链表
算法
【
LeetCode-
中等题】142. 环形链表 II
文章目录题目方法一:哈希表set去重方法二:快慢指针题目方法一:哈希表set去重思路:我们遍历链表中的每个节点,并将它记录下来;一旦遇到了此前遍历过的节点,就可以判定链表中存在环。借助哈希表可以很方便地实现。publicListNodedetectCycle(ListNodehead){if(head==null)returnnull;if(head.next==null)returnnull;i
今天你写代码了吗??
·
2023-08-28 17:26
力扣
#
中等题
leetcode
算法
职场和发展
C++编写算法(二)——排序进阶之扑克牌排序问题
前面一文学习了最常用的三种
初级算法
:选择排序、插入排序以及吊炸天的希尔排序。此文想通过一些例子进一步理解这些排序。如何将一副打乱的扑克牌按照花色以及大小进行排序?
俊仔系滑翔机
·
2023-08-26 17:28
【
LeetCode-
面试经典150题-day13】
目录141.环形链表2.两数相加21.合并两个有序链表138.复制带随机指针的链表92.反转链表Ⅱ141.环形链表题意:给你一个链表的头节点head,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。注意:pos不作为参数进行传递。仅仅是为了标识链表的实际
badgirl-bb
·
2023-08-26 13:44
LeetCode
leetcode
面试
算法
【
LeetCode-
面试经典150题-day14】
目录19.删除链表的倒数第N个结点82.删除排序链表中的重复元素Ⅱ61.旋转链表86.分隔链表146.LRU缓存19.删除链表的倒数第N个结点题意:给你一个链表,删除链表的倒数第n个结点,并且返回链表的头结点。【输入样例】head=[1,2,3,4,5],n=2【输出样例】[1,2,3,5]解题思路:1.双指针p和q,初始哈指向头节点;2.移动q,直到p和q之间相隔的元素为n3.同时移动p和q,直
badgirl-bb
·
2023-08-26 13:43
LeetCode
leetcode
面试
算法
java
【
LeetCode-
中等题】73. 矩阵置零
题目题解一:使用标记数组publicvoidsetZeroes(int[][]matrix){intm=matrix.length;intn=matrix[0].length;boolean[]row=newboolean[m];boolean[]col=newboolean[n];for(inti=0;i
今天你写代码了吗??
·
2023-08-25 19:09
#
中等题
力扣
leetcode
矩阵
算法
【
LeetCode-
中等题】189. 轮转数组
题目题解一:开辟数组取模运算寻找位置(i+k)modn=新位置思路:通过,开辟数组取模运算寻找新位置------位置(i+k)modn=新位置int[]newNums=newint[nums.length];for(inti=0;i数组长度就会出现下标越界,所以需要开始就k对数组长度取模k%=n//方法二数组翻转//k=3n=71234|567//765|4321(全部翻转)//567|1234(
今天你写代码了吗??
·
2023-08-25 19:08
#
中等题
力扣
leetcode
算法
职场和发展
【
LeetCode-
中等题】238. 除自身以外数组的乘积
题目题解一:暴力双指针—超时了双指针暴力查找(需考虑begin==end和begin==end==i)的情况-----力扣示例超出时间限制publicint[]productExceptSelf(int[]nums){intlength=nums.length;intbegin=0;intend=length-1;inti=0;int[]number=newint[length];intsum=1
今天你写代码了吗??
·
2023-08-25 19:08
力扣
#
中等题
leetcode
python
算法
【
LeetCode-
中等题】56. 合并区间
题目题解一:排序思路:1、对数组按第一个元素大小进行排序,使得数组按大小连续排列2、先将第一个数组提前放入list集合,因为肯定是从第一个开始算起的3、接着对下一个数组的左边界和list集合最后一个元素的右边界对比,如果下一个数组的左边界小于等于list集合最后一个元素的右边界,说明有重叠,这样更新list集合最后一个元素的右边界,取两者右边界的最大值作为右边界4、若下一个数组的左边界大于等于li
今天你写代码了吗??
·
2023-08-25 19:37
#
中等题
力扣
leetcode
算法
职场和发展
Leetcode-
每日一题【剑指 Offer 35. 复杂链表的复制】
题目请实现copyRandomList函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个next指针指向下一个节点,还有一个random指针指向链表中的任意节点或者null。示例1:输入:head=[[7,null],[13,0],[11,4],[10,2],[1,0]]输出:[[7,null],[13,0],[11,4],[10,2],[1,0]]示例2:输入:head=[[1,1],[2
jiaoer~~
·
2023-08-24 19:49
leetcode
算法
职场和发展
java
数据结构
【
LeetCode-
中等题】560. 和为 K 的子数组
题目题解一:逆序枚举数组//方法一:枚举数组(顺序)intcount=0;//记录最终符合条件的数组个数intn=nums.length;for(intend=0;end=0;start--){sum+=nums[start];if(sum==k)count++;}}returncount;题解二:map+前缀和为什么map里面要存前缀和的次数,因为前缀和不一定是越加越大的,因为数组元素存在负数,
今天你写代码了吗??
·
2023-08-23 22:19
#
中等题
力扣
leetcode
java
算法
【
LeetCode-
中等题】438. 找到字符串中所有字母异位词
题目题解一:暴力排序依次截取三为排序好的字符串拿出来比较//方法一,暴力排序Listres=newArrayList();intn=s.length();intk=p.length();if(nlist=newArrayList<>();int[]pindex=newint[26];int[]sindex=newint[26];if(slen
今天你写代码了吗??
·
2023-08-23 22:18
#
中等题
leetcode
算法
职场和发展
【
LeetCode-
中等题】53. 最大子数组和
题目题解一:暴力解法://暴力解法每个元素为都循环一次,持续更新最大值intmaxS=Integer.MIN_VALUE;for(inti=0;i0,则将其加到当前元素上,更新当前元素注意,最后还需和第一位进行max比较if(nums.length==0)return0;if(nums.length==1)returnnums[0];intmax=Integer.MIN_VALUE;for(int
今天你写代码了吗??
·
2023-08-23 22:48
#
中等题
力扣
leetcode
python
算法
【
LeetCode-
经典面试150题-day12】
20.有效的括号题意:给定一个只包括'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。【输入样例】s="({})"【输出样例】true解题思路:经典的栈思想,用数组模拟栈,从头开始遍历字符串,遇到左括号进栈,遇到右括号弹出栈顶,并匹配,看是否能匹配上
badgirl-bb
·
2023-08-23 10:03
LeetCode
算法
leetcode
java
面试
【
LeetCode-
困难题】42. 接雨水
题目题解一:暴力双重for循环(以行计算水量)1.先找出最高的柱子有多高(max=3)2.然后第一个for为行数(1,2,3)3.第二个for计算每一行的雨水量(关键在于去除前面的空白区域)利用标志位booleaniscup=true;//标志位,若第一次就少于本次最高水位,则直接跳过,如果是因为处在101谷底的0就得算水量4.最后将每一行计算完的雨水量sum总和//方法一:以行计算水量intsu
今天你写代码了吗??
·
2023-08-23 03:17
#
困难题
leetcode
算法
职场和发展
【
LeetCode-
中等题】3. 无重复字符的最长子串
题目题解一:单指针,滑动窗口思路:设置一个左指针,来判断下一个元素是否在set集合中,如果不在,就加入集合,right继续++,如果在,就剔除重复的元素,计算串的长度,在执行上述操作代码:publicintlengthOfLongestSubstring(Strings){Setset=newHashSet<>();intright=-1;//左侧滑动指针,更新窗口的开始位置intmax=0;in
今天你写代码了吗??
·
2023-08-23 03:14
#
中等题
leetcode
算法
职场和发展
LeetCode-
面试题 08.08. 有重复字符串的排列组合
一、题目二、思路1、使用dfs的方法2、利用set去重,每次改变都是只改变不重复的3、只改变S,当到最后一个时,添加到容器三、代码classSolution{public:vectorpermutation(stringS){vectorOutPut;if(S.empty()){returnOutPut;}//传入字符串,输出数组,第几个dfs(S,OutPut,0);returnOutPut;}
weixin_45794299
·
2023-08-23 00:43
LeetCode刷题
有重复字符串的排列
【
LeetCode-
经典面试150题-day8】
11.盛最多水的容器题意:给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i,0)和(i,height[i])。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。【输入样例】[1,8,6,2,5,4,8,3,7]【输出样例】49解题思路:转换成求长方形的最大面积1.双指针i,j分别指向数组的头和尾,i和j之间
badgirl-bb
·
2023-08-22 10:56
LeetCode
动态规划
算法
leetcode
面试
java
【
LeetCode-
经典面试150题-day9]
目录36.有效的数独54.螺旋矩阵48.旋转图像73.矩阵置零36.有效的数独题意:请你判断一个9x9的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。(请参考示例图)注意:一个有效的数独(部分已被填充)不一定是可解的。只需要根据以上规则,验证已经填入的数字是否
badgirl-bb
·
2023-08-22 10:56
LeetCode
动态规划
算法
leetcode
java
面试
【
LeetCode-
经典面试150题-day10】
目录242.有效的字母异位词49.字母异位词分组202.快乐数219.存在重复元素Ⅱ383.赎金信205.同构字符串290.单词规律242.有效的字母异位词题意:给定两个字符串s和t,编写一个函数来判断t是否是s的字母异位词。注意:若s和t中每个字符出现的次数都相同,则称s和t互为字母异位词【输入样例】s="anagram",t="nagaram"【输出样例】true解题思路:比较简单,定义一个数
badgirl-bb
·
2023-08-22 10:56
LeetCode
动态规划
算法
leetcode
java
【
LeetCode-
面试经典150题-day5】
380.O(1)时间插入、删除和获取随机元素题意:实现RandomizedSet类:RandomizedSet()初始化RandomizedSet对象boolinsert(intval)当元素val不存在时,向集合中插入该项,并返回true;否则,返回false。boolremove(intval)当元素val存在时,从集合中移除该项,并返回true;否则,返回false。intgetRandom
badgirl-bb
·
2023-08-22 10:25
LeetCode
算法
leetcode
面试
【
LeetCode-
面试经典150题-day6】
14.最长公共前缀题意:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。【输入样例】strs=["flower","flow","flight"]【输出样例】"fl"解题思路:横向扫描,依次遍历字符串数组中的每个字符串,对于每个遍历到的字符串,更新最长公共前缀,当遍历完所有的字符串后,即可得到字符数组中的最长公共前缀;classSolution{publicSt
badgirl-bb
·
2023-08-22 10:25
LeetCode
leetcode
面试
算法
【
LeetCode-
面试经典150题-day7】
392.判断子序列题意:给定字符串s和t,判断s是否为t的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。【输入样例】s="abc",t="ahbgdc"【输出样例】true解题思路:双指针枚举classSolution{publicbooleanisSubsequence
badgirl-bb
·
2023-08-22 10:25
LeetCode
动态规划
算法
leetcode
面试
java
【
LeetCode-
面试经典150题-day4】
274.H指数题意:给你一个整数数组citations,其中citations[i]表示研究者的第i篇论文被引用的次数。计算并返回该研究者的h指数。根据维基百科上h指数的定义:h代表“高引用次数”,一名科研人员的h指数是指他(她)至少发表了h篇论文,并且每篇论文至少被引用h次。如果h有多种可能的值,h指数是其中最大的那个。【输入样例】citations=[3,0,6,1,5]【输出样例】3解题思路
badgirl-bb
·
2023-08-22 10:25
LeetCode
算法
leetcode
面试
【
LeetCode-
面试经典150题-day2】
26.删除有序数组中的重复项题意:给你一个升序排列的数组nums,请你原地删除重复出现的元素,使每个元素只出现一次,返回删除后数组的新长度。元素的相对顺序应该保持一致。然后返回nums中唯一元素的个数。考虑nums的唯一元素的数量为k,你需要做以下事情确保你的题解可以被通过:更改数组nums,使nums的前k个元素包含唯一元素,并按照它们最初在nums中出现的顺序排列。nums的其余元素与nums
badgirl-bb
·
2023-08-22 10:55
LeetCode
算法
leetcode
java
【
LeetCode-
面试经典150题-day3】
189.轮转数组题意:给定一个整数数组nums,将数组中的元素向右轮转k个位置,其中k是非负数。【输入样例】nums=[1,2,3,4,5,6,7],k=3【输出样例】[5,6,7,1,2,3,4]解题思路1:直接暴力创建一个新的数组,通过寻找下标的转换规律将轮状后的数组存入临时数组,再将值赋给原数组,因为题目中没有要求返回值,判断的标准还是原数组的最终结果。注意:临时数组跟原数组的下标关系是nu
badgirl-bb
·
2023-08-22 10:55
leetcode
面试
算法
【
LeetCode-
面试经典150题-day1】
88.合并两个有序数组题意:给你两个按非递减顺序排列的整数数组nums1和nums2,另有两个整数m和n,分别表示nums1和nums2中的元素数目。请你合并nums2到nums1中,使合并后的数组同样按非递减顺序排列。注意:最终,合并后数组不应由函数返回,而是存储在数组nums1中。为了应对这种情况,nums1的初始长度为m+n,其中前m个元素表示应合并的元素,后n个元素为0,应忽略。nums2
badgirl-bb
·
2023-08-22 10:54
LeetCode
算法
leetcode
面试
【
LeetCode-
经典面试150题-day11】
目录128.最长连续序列228.汇总区间56.合并区间57.插入区间452.用最少数量的箭引爆气球128.最长连续序列题意:给定一个未排序的整数数组nums,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为O(n)的算法解决此问题。【输入样例】nums=[100,4,200,1,3,2]【输出样例】4解释:最长数字连续序列是[1,2,3,4]解题思路:哈希表
badgirl-bb
·
2023-08-22 10:23
LeetCode
算法
leetcode
java
面试
leetcode-
动态规划
通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。常常适用于有重叠子问题和最优子结构性质的问题,并且记录所有子问题的结果,因此动态规划方法所耗时间往往远少于朴素解法。动态规划有自底向上和自顶向下两种解决问题的方式。自顶向下即记忆化递归,自底向上就是递推。使用动态规划解决的问题有个明显的特点,一旦一个子问题的求解得到结果,以后的计算过程就不会修改它,这样的特点叫做无后效性,求解问题的过程形
SunYutong_1234
·
2023-08-22 02:36
leetcode
leetcode
动态规划
算法
leetcode-
动态规划-32-最长有效括号
题目描述给你一个只包含‘(’和‘)’的字符串,找出最长有效(格式正确且连续)括号子串的长度。示例1:输入:s=“(()”输出:2解释:最长有效括号子串是“()”示例2:输入:s=“)()())”输出:4解释:最长有效括号子串是“()()”示例3:输入:s=“”输出:0提示:0<=s.length<=3*104s[i]为‘(’或‘)’思路这个问题可以通过使用栈(Stack)来解决。栈是一种数据结构,
demo123567
·
2023-08-22 02:05
动态规划
leetcode
动态规划
算法
Leetcode-
每日一题【剑指 Offer 34. 二叉树中和为某一值的路径】
题目给你二叉树的根节点root和一个整数目标和targetSum,找出所有从根节点到叶子节点路径总和等于给定目标和的路径。叶子节点是指没有子节点的节点。示例1:输入:root=[5,4,8,11,null,13,4,7,2,null,null,5,1],targetSum=22输出:[[5,4,11,2],[5,8,4,5]]示例2:输入:root=[1,2,3],targetSum=5输出:[]
jiaoer~~
·
2023-08-22 00:21
leetcode
算法
职场和发展
java
数据结构
Leetcode-
每日一题【剑指 Offer 33. 二叉搜索树的后序遍历序列】
题目输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。参考以下这颗二叉搜索树:5/\26/\13示例1:输入:[1,6,3,2,5]输出:false示例2:输入:[1,3,2,6,5]输出:true提示:数组长度=j){returntrue;}introot=postorder[j];intp=i;//获
jiaoer~~
·
2023-08-22 00:21
leetcode
算法
职场和发展
java
leetcode-
面试题 01.06. 字符串压缩
一、题目二、思路1、遍历一遍,ch表示字符,cht=1表示该字符的数量2、注意判断为空或者为1的情况3、注意添加最后一个字符到压缩字符串中三、代码classSolution{public:stringcompressString(stringS){stringstr="";intlen=S.length();if(S.empty()||len==1){returnS;}intcht=1;charc
weixin_45794299
·
2023-08-21 16:32
LeetCode刷题
visual
studio
c++
ide
LeetCode--HOT100题(35)
LeetCode做题链接:
LeetCode-
合并K个升序链表示例1:输入:lists=[[1,4,5],[1,3,4],[2,6]]输出:[1,1,2,3,4,4,5,6]解释
爱学习的小健
·
2023-08-21 11:52
leetcode
java
算法
LeetCode--HOT100题(37)
LeetCode做题链接:
LeetCode-
二叉树的最大深度示例1:输入:root=[3,9,20,null,null,15,7]输出:3示例2:输入:root=[1,null,2]
爱学习的小健
·
2023-08-21 11:51
LeetCodeHot100
leetcode
算法
【
LeetCode-
中等题】11. 盛最多水的容器
题目题解一:双指针法思路:题目中的示例为:在初始时,左右指针分别指向数组的左右两端,它们可以容纳的水量为min(1,7)∗8=8此时我们需要移动一个指针。移动哪一个呢?应该移动对应数字较小的那个指针(即此时的左指针)。这是因为,由于容纳的水量是由所以,我们将左指针向右移动:此时可以容纳的水量为min(8,7)∗7=49。由于右指针对应的数字较小,我们移动右指针:此时可以容纳的水量为min(8
今天你写代码了吗??
·
2023-08-20 21:07
#
中等题
力扣
leetcode
算法
职场和发展
【
LeetCode-
中等题】128. 最长连续序列
题目题解一:HeshSet+枚举思路:先对数组进行set去重,核心就是,先找出临界值(假设以最小临界为例,那么这个临界值自己就是最小值,),以临界值不断做加1操作,看加一后的数是否在set集合中没,如果在,继续做加一做对比操作,更新最长连续序列长度。代码:publicintlongestConsecutive(int[]nums){//用于对数组去重Setnumset=newHashSet<>()
今天你写代码了吗??
·
2023-08-20 21:07
力扣
#
中等题
leetcode
算法
职场和发展
【
LeetCode-
中等题】49. 字母异位词分组
题目题解一:排序+哈希表思路:由于互为字母异位词的两个字符串包含的字母相同,因此对两个字符串分别进行排序之后得到的字符串一定是相同的,故可以将排序之后的字符串作为哈希表的键。核心api://将字符串转换为字符数组char[]ch=str.toCharArray();//"eat"//将字符串数组排序Arrays.sort(ch);//"aet"//将排序好的字符数组转为字符串,作为map集合的ke
今天你写代码了吗??
·
2023-08-20 21:06
#
中等题
力扣
leetcode
算法
职场和发展
【
LeetCode-
中等题】15. 三数之和
题目题解一:双指针法图解参考链接:画解算法:15.三数之和详解参考代码随想录讲的非常好梦破碎的地方!|LeetCode:15.三数之和代码:classSolution{publicList>threeSum(int[]nums){List>ans=newArrayList0)break;//因为是排序好的数组,如果当前数字大于0,则三数之和一定大于0,所以结束循环if(i>0&&nums[i]==
今天你写代码了吗??
·
2023-08-20 21:36
#
中等题
力扣
leetcode
算法
职场和发展
LeetCode-
相交链表
题目:链接用数组的思维来想这一道题,其实就是在寻找两个数组中第一个相同的元素,并返回这个元素.但链表不同于数组,只能参考大致思路.读题理解如下链表在相交后,在相交节点后面的元素一定是相同的当两个表长度相同时,只需分别遍历比对即可由理解2可知,算出两个链表的长度并求出差值,使较长的链表先走差值步与另一个短链表平齐只要两个节点地址不同,就继续遍历,否则返回相交节点由理解1和链表的定义(因为c1如果要找
尖兵果子
·
2023-08-19 05:05
leetcode
链表
leetcode
数据结构
leetcode-
困难题-239. 滑动窗口最大值(队列的应用)
队列的操作可以参考一下篇,它在Linkedlist类里面已经有实现。https://blog.csdn.net/Fly_as_tadpole/article/details/86536539主要就是和栈的push.pop一类的方法区分开,它的入列方法是offer,出列方法是poll。题目链接这道题目的方法比较难,需要使用到一个双向队列,解决办法如下:https://leetcode-cn.com/
DC妙妙屋
·
2023-08-19 02:01
算法
leetcode
算法
职场和发展
leetcode-
中等题-51. 翻转字符串里的单词
https://leetcode-cn.com/problems/reverse-words-in-a-string/好吧今天又傻一天,可变字符串的交换给我整傻了,再没有像原来的String那么好操作了,写出了个稀巴烂的代码,回头复习一下别人的优质解法。主要研究一下StringBuilder这个类的用法,在里面怎么反转字符串我的解法:classSolution{publicStringrevers
DC妙妙屋
·
2023-08-19 02:31
算法
leetcode
算法
职场和发展
leetcode-
简单题-剑指 Offer 58 - II. 左旋转字符串
https://leetcode-cn.com/problems/zuo-xuan-zhuan-zi-fu-chuan-lcof/comments/这道题目也是简单的,直接在String上面去操作就行了,我就偷懒了。主要是学习一下优秀的解法,就是在原有的字符串上面操作,不使用额外空间的做法。我的解法:classSolution{publicStringreverseLeftWords(String
DC妙妙屋
·
2023-08-19 02:31
算法
leetcode
算法
职场和发展
LeetCode--HOT100题(33)
LeetCode做题链接:
LeetCode-
排序链表示例1:输入:head=[4,2,1,3]输出:[1,2,3,4]示例2:输入:head=[-1,5,3,4,0]输出:[-1,0,3,4,5]示例3
爱学习的小健
·
2023-08-18 18:54
LeetCodeHot100
leetcode
算法
上一页
7
8
9
10
11
12
13
14
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他