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刷题日记
精选例题(附代码+链接)
文章目录一、有效字母的异同词二、数组交集三、快乐数四、两数之和五、三数之和六、四数之和七、四数相加八、赎金信九、反转字符串十、反转字符串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
初级算法
动态规划
石器时代 ——
Leetcode刷题日记
(一 百大热题)
Date:2019.10.22~(C++Version)文章目录AllLabels:`热题100`L1两数之和L2两数相加暴力相加递归迭代L3无重复字符的最长子串L4找两个升序数组中的中位数`润色理解`代码升级版-数组划分-不熟悉L5最长回文子串扩散搜索动态规划马拉车算法/Manacher'sAlgorithmL10正则表达式匹配暴力递归递归+备忘录DPL11盛最多水的容器双指针L15三数之和双指
Life Recoder
·
2020-07-15 16:14
CS
-
Algo
leetcode刷题日记
之---排列问题
排列问题第k个排列下一个排列全排列全排列2回文排列2组合总和组合总和2子集1子集2总结1:第k个排列题目描述:给出集合[1,2,3,…,n],其所有元素共有n!种排列。按大小顺序列出所有排列情况,并一一标记,当n=3时,所有排列如下:“123”“132”“213”“231”“312”“321”给定n和k,返回第k个排列。说明:给定n的范围是[1,9]。给定k的范围是[1,n!]。基本思路:(1)回
vinojie
·
2020-07-12 04:10
leetcode刷题
【
leetcode刷题日记
】33. 搜索旋转排序数组(每日一题)
今天的题目是搜索旋转排序数组先看一下力扣官方的题目描述:假设按照升序排序的数组在预先未知的某个点上进行了旋转。(例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回-1。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是O(logn)级别。示例1:输入:nums=[4,5,6,7,0,1,
某中二的呆毛
·
2020-07-10 01:40
leetcode刷题日记
[东哥的
leetcode刷题日记
] leetcode 52 : Guess Number Higher or Lower
leetcode52:GuessNumberHigherorLower题目链接:https://leetcode.com/problems/guess-number-higher-or-lower/难度:简单归类:数组操作,二分查找最开始刷easy题比较多,毕竟循序渐进…二分的easy题快没了哈哈哈题目:我们正在玩一个猜数字游戏。游戏规则如下:我从1到n选择一个数字。你需要猜我选择了哪个数字。每次
我的爱在西元前
·
2020-07-10 00:17
东哥的leetcode刷题日记
[东哥的
leetcode刷题日记
] leetcode 69 : Sqrt(x)
leetcode69:Sqrt(x)题目链接:https://leetcode-cn.com/problems/sqrtx/难度:简单归类:数组操作,二分查找题目:实现intsqrt(intx)函数。计算并返回x的平方根,其中x是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例:示例1:输入:4输出:2示例2:输入:8输出:2说明:8的平方根是2.82842…,由于返回类
我的爱在西元前
·
2020-07-10 00:17
东哥的leetcode刷题日记
[东哥的
leetcode刷题日记
] leetcode 153 :Find Minimum in Rotated Sorted Array
leetcode153:FindMinimuminRotatedSortedArray题目链接:https://leetcode-cn.com/problems/find-minimum-in-rotated-sorted-array/难度:中等归类:数组操作,二分查找,双指针题目:假设按照升序排序的数组在预先未知的某个点上进行了旋转。(例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6
我的爱在西元前
·
2020-07-10 00:17
东哥的leetcode刷题日记
[东哥的
leetcode刷题日记
] leetcode 704 :Binary Search
leetcode704:BinarySearch题目链接:https://leetcode-cn.com/problems/binary-search/难度:简单归类:数组操作二分查找题目给定一个?n?个元素有序的(升序)整型数组?nums和一个目标值?target?,写一个函数搜索?nums?中的target,如果目标值存在返回下标,否则返回-1。你可以假设nums中的所有元素是不重复的。n将在
我的爱在西元前
·
2020-07-10 00:16
东哥的leetcode刷题日记
上一页
1
2
3
4
下一页
按字母分类:
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
其他