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刷题日记
——5. 最长回文子串
给你一个字符串s,找到s中最长的回文子串。示例1:输入:s="babad"输出:"bab"解释:"aba"同样是符合题意的答案。示例2:输入:s="cbbd"输出:"bb"示例3:输入:s="a"输出:"a"示例4:输入:s="ac"输出:"a"提示:1maxLength){maxLength=subStr.length();res=""+subStr;}}}}returnres;}publicb
小重山_
·
2022-02-09 22:14
leetcode刷题日记
——3. 无重复字符的最长子串
给定一个字符串s,请你找出其中不含有重复字符的最长子串的长度。示例1:输入:s="abcabcbb"输出:3解释:因为无重复字符的最长子串是"abc",所以其长度为3。示例2:输入:s="bbbbb"输出:1解释:因为无重复字符的最长子串是"b",所以其长度为1。示例3:输入:s="pwwkew"输出:3解释:因为无重复字符的最长子串是"wke",所以其长度为3。请注意,你的答案必须是子串的长度,
小重山_
·
2022-02-09 00:19
leetcode刷题日记
——2.两数相加
给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字0之外,这两个数都不会以0开头。示例输入:l1=[2,4,3],l2=[5,6,4]输出:[7,0,8]解释:342+465=807.来源:力扣(LeetCode)链接:https://leetcode-cn.com/pr
小重山_
·
2022-01-26 19:49
LeetCode刷题日记
精选例题(代码+链接)
文章目录一、对称二叉树二、相同的树三、另一棵树的子树四、二叉树的最大深度五、二叉树的最小深度六、完全二叉树的节点个数七、平衡二叉树八、二叉树的所有路径相见即是有缘,如果对你有帮助,给博主一个免费的点赞以示鼓励把QAQ一、对称二叉树题目链接二叉树的对称是指二叉树的左子树与右子树互相翻转后是否相等,我们的第一种思路是使用队列,从最外侧向内侧进行扫描,判断每次扫描的两个节点的值是否相等节点为空的话会出现
温文艾尔
·
2021-12-07 15:33
数据结构与算法
leetcode
算法
java
数据结构
面试
LeetCode刷题日记
精选例题(解析+代码+链接)
文章目录一、用栈模拟队列二、用队列模拟栈三、有效的括号解法一解法二四、删除字符串中所有相邻重复项五、逆波兰表达式求值六、滑动窗口最大值七、前k个高频元素一、用栈模拟队列因为队列先进先出,而栈先进后出,所以我们用两个栈,一个输入栈,一个输出栈来模拟队列,当添加数据时,将其加在输入栈,当输出数据时,输出输出栈的数据即可题目链接StackinStack;StackoutStack;publicMyQue
温文艾尔
·
2021-11-30 11:54
数据结构与算法
数据结构
java
后端
算法
面试
LeetCode刷题日记
精选例题-双指针经典问题总结
文章目录一、移除数组元素二、反转字符串三、替换空格(剑指Offer)四、翻转字符串里的单词五、翻转链表六、删除链表的倒数第n个结点七、链表相交八、环形链表九、三数之和十、四数之和一、移除数组元素题目链接publicstaticintremoveElement(int[]nums,intval){intslowIndex;intfastIndex=0;for(slowIndex=0;fastInde
温文艾尔
·
2021-11-27 18:26
数据结构与算法
LeetCode
数据结构
java
leetcode
算法
面试
LeetCode刷题日记
精选例题(详细解析+代码+链接)
文章目录一、字符替换二、翻转字符串里的单词三、左旋转字符串(剑指Offer)四、实现strStr()五、重复的子字符串一、字符替换来源:leetcode题目链接创建StringBuilder对象(StringBuffer也可以),在遍历的时候进行判断,是空格则替换并加到StringBuilder后面,不是空格则直接加入publicstaticStringreplaceSpace(Strings){
温文艾尔
·
2021-11-27 18:20
数据结构与算法
LeetCode
算法
数据结构
leetcode
java
面试
LeetCode刷题日记
精选例题(附代码+链接)
文章目录一、有效字母的异同词二、数组交集三、快乐数四、两数之和五、三数之和六、四数之和七、四数相加八、赎金信九、反转字符串十、反转字符串2十一、字母异位分组一、有效字母的异同词给定两个字符串s和t,编写一个函数来判断t是否是s的字母异位词。注意:若s和t中每个字符出现的次数都相同,则称s和t互为字母异位词来源:力扣(LeetCode)链接:题目链接解题思路:因为此题暴力破解的时间复杂度较高,所以我
温文艾尔
·
2021-11-25 16:05
数据结构与算法
LeetCode
算法
数据结构
leetcode
java
面试
【
LeetCode刷题日记
】[104. 二叉树的最大深度]
一、题目二、解析C++classSolution{public:intmaxDepth(TreeNode*root){if(root==nullptr)return0;returnmax(maxDepth(root->left),maxDepth(root->right))+1;}};CintmaxDepth(structTreeNode*root){if(root==NULL)return0;r
小熊coder
·
2021-11-21 23:07
数据结构与算法
c语言
c++
leetcode
LeetCode刷题日记
2021-4-8/153. 寻找旋转排序数组中的最小值/二分查找法
仅供自己学习记录
LeetCode刷题日记
2021-4-8题目描述:已知一个长度为n的数组,预先按照升序排列,经由1到n次旋转后,得到输入数组。
在努力的路上1024
·
2021-04-08 09:06
Leetcode每日一题
leetcode刷题日记
:94. 二叉树的中序遍历
给定一个二叉树的根节点root,返回它的中序遍历。示例1:输入:root=[1,null,2,3]输出:[1,3,2]示例2:输入:root=[]输出:[]示例3:输入:root=[1]输出:[1]示例4:输入:root=[1,2]输出:[2,1]示例5:输入:root=[1,null,2]输出:[1,2]来源:力扣(LeetCode)链接:https://leetcode-cn.com/prob
Linsanity2021
·
2021-03-10 20:49
leetcode每日一题
二叉树
leetcode
数据结构
递增顺序二叉查找树(树的中序遍历)Leetcode 刷题日记 2021.2.20
Leetcode刷题日记
2021.2.20题目链接:https://leetcode-cn.com/problems/increasing-order-search-tree/问题描述:按递增顺序把二叉查找树进行重新排列解答
弗拉基米尔的镰刀
·
2021-02-20 15:11
Leetcode刷题笔记
java
leetcode
获取树的叶子节点:叶子相似的树 Leetcode 刷题日记 2021.2.19
Leetcode刷题日记
2021.2.19题目链接:https://leetcode-cn.com/problems/leaf-similar-trees/问题描述:解答1:非递归的深度优先代码:classSolution
弗拉基米尔的镰刀
·
2021-02-19 17:19
Leetcode刷题笔记
算法
leetcode
java
数据结构
【
LeetCode刷题日记
】持续更新中...
【
LeetCode刷题日记
】持续更新中...Day-06-2021-02-04-栈基础题:224.基本计算器155.最小栈150.逆波兰表达式求值Day-05-2021-02-03-基础题:102.二叉树的层序遍历
BIT可达鸭
·
2021-02-04 19:02
LeetCode
链表
二叉树
数据结构
算法
leetcode
LeetCode刷题日记
416. 分割等和子集
题目给出一个数组nums,数组中包含一些正整数,问能够将这个数组分成两个子集,使得这两个子集相等。首先一上来的想法是将数列中所有的数和求出,然后看数组中能不能将其中的某些数组成总和的一半。这里需要用到动态规划的思想。用dp[i][j]来表示数组从0到i范围内能否表示数字j。我们用size函数可以得到数组n,通过求合再除以2可以得到目标target。然后我们就能创建dp数组如下:vector>(n,
Alezzzzzz
·
2020-10-11 13:45
LeetCode刷题日记
动态规划
leetcode刷题日记
----数组问题
缺失的第一个正数题目描述:给你一个未排序的整数数组,请你找出其中没有出现的最小的正整数基本思路:(1))原地哈希,将数组视为哈希表,:就把11这个数放到下标为00的位置,22这个数放到下标为11的位置,按照这种思路整理一遍数组。然后我们再遍历一次数组,第11个遇到的它的值不等于下标的那个数,就是我们要找的缺失的第一个正数。这个思想就相当于我们自己编写哈希函数,这个哈希函数的规则特别简单,那就是数值
vinojie
·
2020-09-17 03:26
leetcode刷题
算法
数据结构
python
Leetcode刷题日记
之环形链表II
一:问题描述环形链表II给定一个链表,返回链表开始入环的第一个节点。如果链表无环,则返回null。为了表示给定链表中的环,我们使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。如果pos是-1,则在该链表中没有环。说明:不允许修改给定的链表。示例1:输入:head=[3,2,0,-4],pos=1输出:tailconnectstonodeindex1解释:链表中有一个环,其尾部连接到第
ych12345xx
·
2020-09-12 14:01
学习笔记
LeetCode刷题日记
之对角线遍历
一:问题描述对角线遍历给定一个含有MxN个元素的矩阵(M行,N列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示。示例:输入:[[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,4,7,5,3,6,8,9]解释:说明:给定矩阵中的元素总数不会超过100000。二:问题分析分析问题易知,二维数组中索引和相同的元素为同一次对角遍历的所有元素,索引和%2为0的元素对角
ych12345xx
·
2020-09-12 14:30
学习笔记
LeetCode:移动零(Python版本)
LeetCode刷题日记
移动零Python代码移动零来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/给定一个数组nums,编写一个函数将所有0移动到数组的末尾
Cassiel澈丹
·
2020-09-11 23:42
Python
数组
初级算法
【
leetcode刷题日记
】Task11-删除链表的倒数第n个节点
题目描述给定一个链表,删除链表的倒数第n个节点,并且返回链表的头结点给定一个链表:1->2->3->4->5,和n=2.当删除了倒数第二个节点后,链表变为1->2->3->5.解题思路这个题要是做出来感觉上还是比较简单的,因为我们可以通过循环计算出链表的长度,之后找到想删除的那个元素,将它删除就好了,所以这个解题思路应该分为两个步骤,第一个步骤就是计算出链表长度,第二个步骤是删除倒数第n个元素,期
summer丶i
·
2020-08-26 14:38
LeetCode
leetcode刷题日记
-热题100(5)
337-打家劫舍3(python)#完全背包0/1classSolution:defrob(self,root):defrobinterger(root):res=[0,0]ifnotroot:returnresleft=robinterger(root.left)right=robinterger(root.right)res[0]+=max(left[0],left[1])+max(right
Dominic.ycl
·
2020-08-22 04:22
leetcode刷题日记
-热题100(4)
215-数组中第k个最大元素(python)#快速选择算法-改进快排classSolution:deffindKthLargest(self,nums:List[int],k:int)->int:defselect(left,right,k_smallest):ifleft==right:returnnums[left]pivot_index=random.randint(left,right)p
Dominic.ycl
·
2020-08-22 04:22
leetcode刷题日记
-热题100(3)
139-单词划分(python)#动态规划classSolution:defwordBreak(self,s:str,wordDict:List[str])->bool:dp=[False]*(len(s)+1)dp[0]=Trueforiinrange(1,len(s)+1):#第一层循环是字符串forwordinwordDict:#循环每个dict,看是否能装进去if(i>=len(word)
Dominic.ycl
·
2020-08-22 04:21
LeetCode刷题日记
(Day16)
Problem136.SingleNumber题目描述Givenanon-emptyarrayofintegers,everyelementappearstwiceexceptforone.Findthatsingleone.Note:Youralgorithmshouldhavealinearruntimecomplexity.Couldyouimplementitwithoutusingext
blackKerneledRice
·
2020-08-22 04:30
LeetCode刷题日记
-持续更新中
立志刷500道leetcode…每天更新…3.给定一个字符串,请你找出其中不含有重复字符的最长子串的长度给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入:“abcabcbb”输出:3解释:因为无重复字符的最长子串是“abc”,所以其长度为3。示例2:输入:“bbbbb”输出:1解释:因为无重复字符的最长子串是“b”,所以其长度为1。示例3:输入:“pwwkew”输出:3解释
不愿透露姓名的王建森
·
2020-08-22 03:49
数据结构和算法
LeetCode
leetcode刷题日记
(3)
反转整数给定一个32位有符号整数,将整数中的数字进行反转;示例:输入:123输出:321intreverse(intx){intresult=0;while(x!=0){inttemp=result*10+x%10;if(temp/10!=result){return0;}//考虑溢出的情况,temp由商和余数构成,当溢出之后,值的商一定不会再等于resultresult=temp;x=x/10;
LeonRunningNoob
·
2020-08-22 00:42
leetcode刷题日记
-热题100(1)
01-两数之和(python)#比较/排序+指针classSolution:deftwosum(self,nums,target):foriinrange(len(nums)):temp=nums[:i]if(target-nums[i])intemp:j=temp.index(target-nums[i])breakreturn[j,i]03-无重复字符最长子串(python)#滑动窗口clas
Dominic.ycl
·
2020-08-22 00:37
LeetCode刷题日记
(一)——链表、栈相关
文章目录[226.翻转二叉树](https://leetcode-cn.com/problems/invert-binary-tree/)[232.用栈实现队列](https://leetcode-cn.com/problems/implement-queue-using-stacks/)[20.有效的括号](https://leetcode-cn.com/problems/valid-paren
CoderZk
·
2020-08-20 07:09
数据结构与算法
LeetCode:x 的平方根(Python版本)
LeetCode刷题日记
x的平方根思路Python代码x的平方根来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/实现intsqrt(intx)函数。
Cassiel澈丹
·
2020-08-20 03:53
Python
二分查找
LeetCode:分割回文串(Python版本)
LeetCode刷题日记
分割回文串Python代码代码分析分割回文串来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/给定一个字符串s,将s分割成一些子串
Cassiel澈丹
·
2020-08-19 10:18
Python
Leetcode刷题日记
(2020.6.11):旋转矩阵
题目如下:分析如下:本题其实就是将矩阵进行旋转,因为我主要是研究CV的,所以对于这种坐标的转换很熟悉,看到后,我就用了自己常用的方法:首先我们将矩阵进行上下交换,接着再将得到的新矩阵按照对脚线进行交换机可代码如下:1#!/usr/bin/envpython2#-*-coding:utf-8-*-3"""4#@Time:2020/6/119:1256#@Author:ZFJ78#@File:旋转矩阵
断桥之蝶恋花
·
2020-08-16 21:05
Leetcode刷题日记
(2020.6.9):最小值
题目如下:分析:本题说实话,没什么特殊的技巧,有的只是细节首先假如我们用暴力枚举两个数组中的所有数对,然后再计算绝对值最小的差值,肯定超时;那么我想了下,我们可以先分别对两个数组按照从小到大的顺序进行排序,然后再使用双指针的方法来计算算法流程:1.初始时,我们设置i=0,j=0分别指向两个数组中的第一个元素;2.然后我们计算a[i]-b[j]的绝对值,如果比当前的最小值还要小,就更新最小值;3.这
断桥之蝶恋花
·
2020-08-16 21:05
Leetcode刷题日记
(2020.06.05):翻转单词顺序
题目如下:分析:本体涉及到多个空格当成一个空格,因此我立刻想到了Python中的split()函数,在这里首先普及下split()和split('')两个函数的区别:1s1="wearefamily"#中间一个空格2s2="wearefamily"#中间两个空格3s3="wearefamily"#中间三个空格4s4="wearefamily"#中间四个空格56s1=s1.split("")7s2=
断桥之蝶恋花
·
2020-08-16 21:04
LeetCode:最小栈(Python版本)
LeetCode刷题日记
最小栈思路Python代码最小栈来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/设计一个支持push,pop,top操作,并能在常数时间内检索到最小元素的栈
Cassiel澈丹
·
2020-08-16 06:20
Python
设计问题
Leetcode刷题日记
-206. 反转链表-(递归详解)
首先了解一下递归的正确打开方式:找出临界值找出最后一次和倒数第二次的关系找出临界值翻转后头变成了尾巴,所以最后的临界值head.next==null,同时考虑空链表,所以临界值为head==null||head.next==null,当head==null||head.next==null时候,只需要将head返回就行if(head==null||head.next==null){returnhe
Mango学习日记
·
2020-08-10 02:40
刷题日记
LeetCode:回文数(Python版本)
LeetCode刷题日记
回文数Python代码进阶Python代码回文数来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/判断一个整数是否是回文数。
Cassiel澈丹
·
2020-08-09 21:02
Python
力扣
LeetCode刷题日记
(五) 整数反转
给出一个32位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入:123输出:321示例2:输入:-123输出:-321示例3:输入:120输出:21注意:假设我们的环境只能存储得下32位的有符号整数,则其数值范围为[−231,231−1]。请根据这个假设,如果反转后整数溢出那么就返回0。来源:力扣(LeetCode)链接:https://leetcode-cn.com/probl
LiuLllDDdd
·
2020-08-07 16:26
LeetCode刷题
力扣
LeetCode刷题日记
(二)
给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入:“abcabcbb”输出:3解释:因为无重复字符的最长子串是“abc”,所以其长度为3。示例2:输入:“bbbbb”输出:1解释:因为无重复字符的最长子串是“b”,所以其长度为1。示例3:输入:“pwwkew”输出:3解释:因为无重复字符的最长子串是“wke”,所以其长度为3。请注意,你的答案必须是子串的长度,“pwke”是
LiuLllDDdd
·
2020-08-07 16:25
LeetCode刷题
力扣
LeetCode刷题日记
(一)
1给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定nums=[2,7,11,15],target=9因为nums[0]+nums[1]=2+7=9所以返回[0,1]来源:力扣(LeetCode)链接:https://leetcode-cn.com
LiuLllDDdd
·
2020-08-07 16:25
LeetCode刷题
力扣
LeetCode刷题日记
(四) Z 字形变换
将一个给定字符串根据给定的行数,以从上往下、从左到右进行Z字形排列。比如输入字符串为“LEETCODEISHIRING”行数为3时,排列如下:LCIRETOESIIGEDHN之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“LCIRETOESIIGEDHN”。请你实现这个将字符串进行指定行数变换的函数:stringconvert(strings,intnumRows);示例1:输入
LiuLllDDdd
·
2020-08-07 10:22
LeetCode刷题
leetcode刷题日记
(三)—— 递归回溯
#46.全排列classSolution:defpermute(self,nums):iflen(nums)==0:return[]iflen(nums)==1:return[[nums[0]]]result=[]fori,vinenumerate(nums):tmp=self.permute(nums[:i]+nums[i+1:])forjintmp:result.append([v]+j)re
wzw&weiye
·
2020-08-03 21:46
leetcode
leetcode刷题日记
(一)—— 数组
因为暑期实习找得很不顺利,感觉自身最大的问题体现在刷题量偏少,操作系统,数据库基础不好,所以现在决定写博客来记录整个过程,希望能找到大厂offer,如果不能找到的话也算是为秋招做准备。剑指offer的题我很早就刷完了,现在主要刷leetcode的题。今天更新的是我刷的数组的题,基本的思路有:排序查找指针碰撞滑动窗口因为整个博客更多的给自己看,所以内容上可能可读性不是很好~大致格式为(#leetco
wzw&weiye
·
2020-08-03 21:46
数组
leetcode刷题日记
(二)—— 查找 Set和Hashmap
#查找,如果强调存在,用SET,如果强调个数或有时需要顺序,用DIC#202快乐数classSolution:defisHappy(self,n:int)->bool:s=set()while1:print(s)tmp=0whilen!=0:tmp+=(n%10)*(n%10)n=n//10iftmp==1:returnTrueelse:iftmpins:returnFalseelse:s.add
wzw&weiye
·
2020-08-03 21:46
leetcode
石器时代 ——
Leetcode刷题日记
(三 面试题相关)
随机刷题vivo2020算法题B卷运矿石每次可以挖到多个矿石,每个矿石的重量都不一样,挖矿结束后需要通过一款平衡矿车运送下山;平衡矿车有左右2个车厢,中间只有1个车轮沿着导轨滑到山下,且矿车只有在2个车厢重量完全相等且矿石数量相差不超过1个的情况下才能成功运送矿石,否则在转弯时可能出现侧翻假设小v挖到了n(n#include#include#include#include#include//INT
Life Recoder
·
2020-08-02 16:22
CS
-
Algo
石器时代 ——
Leetcode刷题日记
(精选算法200题)
文章目录156.上下翻转二叉树递归法迭代157.用Read4读取N个字符158.用Read4读取N个字符II159.至多包含两个不同字符的最长子串161.相隔为1的编辑距离163.缺失的区间186.翻转字符串里的单词II243.最短单词距离244.最短单词距离II245.最短单词距离III250.统计同值子树255.验证前序遍历序列二叉搜索树156.上下翻转二叉树有二叉树:其中所有的右节点要么是具
Life Recoder
·
2020-08-02 16:11
CS
-
Algo
LeetCode:盛最多水的容器(Python版本)
LeetCode刷题日记
盛最多水的容器Python代码盛最多水的容器来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/给定n个非负整数a1,a2,…,
Cassiel澈丹
·
2020-07-31 19:07
Python
动态规划
leetcode刷题日记
1.树-MinimumDepthofBinaryTree求二叉树最小深度注意是最小深度,不是最大classSolution{public:intrun(TreeNode*root){if(root==NULL)return0;intans=1;queueq;q.push(root);while(!q.empty()){intsize=q.size();while(size--){TreeNode*
zz你的名字
·
2020-07-30 07:26
LeetCode:字符串中的第一个唯一字符(Python版本)
LeetCode刷题日记
字符串中的第一个唯一字符Python代码字符串中的第一个唯一字符来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/给定一个字符串
Cassiel澈丹
·
2020-07-29 10:54
字符串
Python
初级算法
Leetcode刷题日记
(2020.07.19):两数相加II
题目:思路分析:让求两个数相加是个经典的问题。让我们复习一下小学的求加法:把两个加数的个位数字对齐;从两个加数的个位开始相加,如果相加结果大于10则只保留减去10的数字,并记录是否为进位。两个加数的前面一位数字相加,加上进位,重复步骤2.所以,我们需要三个变量:加数a当前的数字s1,加数b当前的数字s2,进位carry.计算过程是:从两个数字的末尾数字开始,依次向前遍历执行s1,s2,carry相
断桥之蝶恋花
·
2020-07-19 16:00
LeetCode:买卖股票的最佳时机(Python版)
LeetCode刷题日记
买卖股票的最佳时机Python代码买卖股票的最佳时机来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/给定一个数组,它的第i个元素是一支给定股票第
Cassiel澈丹
·
2020-07-16 01:55
Python
初级算法
动态规划
上一页
1
2
3
4
5
下一页
按字母分类:
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
其他