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-
面试题06-从尾到头打印链表
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/cong-wei-dao-tou-da-yin-lian-biao-lcof/问题输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例:输入:head=[1,3,2]输出:[2,3,1]链表结构publicclassListNode{intval;ListNodenext;Li
萧安
·
2020-06-18 22:00
LeetCode-
两数之和
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/two-sum问题给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例给定nums=[2,7,11,15],target=9因为nums[0]+nums[1]=
萧安
·
2020-06-15 18:00
leetcode探索
初级算法
之字符串
1.反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组char[]的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用O(1)的额外空间解决这一问题。#反转字符串#编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组char[]的形式给出。#不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用O(1)的额外空间解决这一问题。#你可
鹊南飞_
·
2020-05-11 13:33
LeetCode-
树的构造篇
树的创建一定是递归创建,分而治之的刷题顺序遵循https://blog.csdn.net/linhuanmars/article/details/410400871.LeetCode108,将有序数组转换为二叉搜索树对于该题一个比较朴素的想法就是讲每棵树的左右子树的节点数量差控制在一个节点范围内,即每次将数组arr分成(arr-1)/2和arr-(arr-1)/2-1两个子树,然后数组中间节点作为
BUAA_小胡
·
2020-04-26 21:05
刷题
【
leetcode-
字符串】字符串的排列
题目:给定两个字符串s1和s2,写一个函数来判断s2是否包含s1的排列。换句话说,第一个字符串的排列之一是第二个字符串的子串。示例1:输入:s1="ab"s2="eidbaooo"输出:True解释:s2包含s1的排列之一("ba").示例2:输入:s1="ab"s2="eidboaoo"输出:False注意:输入的字符串只包含小写字母两个字符串的长度都在[1,10,000]之间思路:建立一个和s
康斌825
·
2020-04-24 11:18
【
leetcode-
数组】最大连续1的个数
题目:给定一个二进制数组,计算其中最大连续1的个数。示例1:输入:[1,1,0,1,1,1]输出:3解释:开头的两位和最后的三位都是连续1,所以最大连续1的个数是3.注意:输入的数组只包含0和1。输入数组的长度是正整数,且不超过10,000。思路:设置计数器tmp和最大长度max,遍历数组,如果当前元素是1,则计数器自增,否则计数器清零。并且需要更新最大结果。java代码:classSolutio
康斌825
·
2020-04-22 13:10
LeetCode
寻找两个有序数组的中位数-LeetCode
示例1:nums1=[1,3]nums2=[2]则中位数是2.0示例2:nums1=[1,2]nums2=[3,4]则中位数是(2+3)/2=2.5来源:力扣(LeetCode)链接:https://
leetcode
吴志鸿
·
2020-04-20 00:00
2018年8月 leetcode刷题(
初级算法
数组)
从排序数组中删除重复项给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。自己问题代码(及正解):PS:自己的问题出在,没有看清楚题目,并且将赋值语句混乱为移动。细节在于i++处,当相等的时候i下标先向后移动,在进行比较。//在一个数组中只能是赋值操作,不能修改长度。
TyPrg
·
2020-04-13 05:28
LeetCode
初级算法
--链表01:反转链表
LeetCode
初级算法
--链表01:反转链表搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事'获取更多算法、机器学习干货csdn:https://blog.csdn.net/baidu
xiaoming3526
·
2020-04-13 02:48
LeetCode-
只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。你可以不使用额外空间来实现吗?示例1:输入:[2,2,1]输出:1示例2:输入:[4,1,2,1,2]输出:4思考:算法具有线性复杂度说明不能使用两层For循环,联想Map使用键值对记录每个元素和它出现的次数最后输出次数为一的元素代码:classSolutio
G_dalx
·
2020-04-12 01:58
leetcode-
刷题记录20200411-DP
DP-最长回文子序列题目:给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为1000。算法解析:1暴力法:基于字符串每一位往两边找到最长回文字符串python:classSolution:deflongestPalindrome(self,s:str)->str:#暴力法,从i位开始向两边找,找到最长回文子序列deflengthPalidrome(s,l,r):#从i开始获得回文w
mark_GJ
·
2020-04-11 23:25
leetcode
leetCode-
第十三题:Roman To Integer
题目:题目分析思路一:由于是在有限的数字中将罗马数字转换为阿拉伯数字所以可以采取列表发,将字符串可能出现的情况全部都列出来,然后在字符串中查找是否出现相应的字符串来判断相应的值。如全部可能的情况如下:{"0","I","II","III","IV","V","VI","VII","VIII","IX"},{"0","X","XX","XXX","XL","L","LX","LXX","LXXX",
baixiaoshuai
·
2020-04-11 12:05
Leetcode-
第3题:Longest Substring Without Repeating Charact
题目:Givenastring,findthelengthofthelongestsubstringwithoutrepeatingcharacters.Forexample,thelongestsubstringwithoutrepeatinglettersfor"abcabcbb"is"abc",whichthelengthis3.For"bbbbb"thelongestsubstringis
八刀一闪
·
2020-04-10 13:52
[
LeetCode-
面试01.06]字符串压缩
一.题目:字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)示例1:输入:"aabcccccaaa"输出:"a2b1c5a3"示例2:输入:"abbccd"输出:"abbccd"解释:"abbccd"压缩后为"a1b2
Movle
·
2020-04-09 18:49
leetcode-
面试题14-1-剪绳子
题目描述:第一次提交:classSolution:defcuttingRope(self,n:int)->int:ans=0forminrange(2,max(n//2,3)):j=1a=n//mb=n%mfor_inrange(b):j*=(a+1)for_inrange(m-b):j*=(a)ans=max(ans,j)returnans数学法:O(1)classSolution:defcut
真不知道叫啥好
·
2020-04-09 11:00
初级算法
-Dijkstra算法
问题描述一个点(源点)到其余各个顶点的最短路径,也叫做“单源最短路径”。例如求下图中的1号顶点到2、3、4、5、6号顶点的最短路径。问题解释使用二维数组e来存储顶点之间边的关系一维数组dis来存储1号顶点到其余各个顶点的初始路程dis数组中的值称为最短路的“估计值”。1到2号通过dis可知为最短。再看2号有什么出边。2>3or2>4,2到3能否让1到3的路程变短?比较dis[3]和dis[2]+e
一书文集
·
2020-04-09 05:20
leetcode-
面试题13-机器人的运动范围
题目描述:方法一:dfs/bfsclassSolution:defmovingCount(self,m:int,n:int,k:int)->int:defdigitsum(n):ans=0whilen:ans+=n%10n//=10returnansfromqueueimportQueueq=Queue()q.put((0,0))s=set()whilenotq.empty():x,y=q.get
真不知道叫啥好
·
2020-04-08 23:00
Leetcode-
二叉树-68- 二叉树的最近公共祖先
面试题68-II.二叉树的最近公共祖先题目给定一个二叉树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树T的两个结点p、q,最近公共祖先表示为一个结点x,满足x是p、q的祖先且x的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树:root=[3,5,1,6,2,0,8,null,null,7,4]示例1:输入:root=[3,5,1,6,2,
码头工人
·
2020-04-08 00:00
[
Leetcode-
算法]914.卡牌分组
题目链接:戳这里题目描述:解题思路:用HashMap来存以数组中数为key,出现次数为value的键值对,如果有value为奇数,直接返回false;否则看value的值是不是有公约数。此题我代码效率不高,待优化。java代码:classSolution{publicbooleanhasGroupsSizeX(int[]deck){intlen=deck.length;Maptmp=newHash
吃不完的土豆番茄
·
2020-04-06 19:37
leetcode
java
hashmap
[
Leetcode-
算法]409.最长回文串
题目链接:戳这里题目描述:我的憨憨解题思路:将字符串中每一个字符作为键值key存入HashMap中,字符出现的次数作为value存入。如果出现次数为偶数则直接加入到结果中;如果出现次数为奇数,分两种情况:若加入到结果前,已有出现次数为奇数次的加入到结果中,则加入此出现次数/2;若加入到结果前,没有其它出现次数为奇数次的加入到结果中,则直接将此出现次数加入到结果中。java代码:importjava
吃不完的土豆番茄
·
2020-04-06 18:27
java
leetcode
hashmap
LeetCode
初级算法
--动态规划01:爬楼梯
LeetCode
初级算法
--动态规划01:爬楼梯搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事'获取更多算法、机器学习干货csdn:https://blog.csdn.net/baidu
xiaoming3526
·
2020-04-06 03:05
Leetcode-
树问题(一)
94.BinaryTreeInorderTraversal二叉树的非递归中序遍历/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(intx){val=x;}*}*/classSolution{publicListinorderTraversal(T
文哥的学习日记
·
2020-04-05 05:21
leetcode-
剪绳子
给你一根长度为n的绳子,请把绳子剪成m段,记每段绳子长度为k[0],k[1]...k[m-1],求k[0]k[1]...k[m-1]的最大值。已知绳子长度n为整数,m>1(至少要剪一刀,不能不剪),k[0],k[1]...k[m-1]均要求为整数。例如,绳子长度为8时,把它剪成3-3-2,得到最大乘积18;绳子长度为3时,把它剪成2-1,得到最大乘积2我们假定绳子长度为n,由于题目要求至少剪一刀,
小蛋子
·
2020-04-05 02:40
LeetCode-
爬楼梯(动态规划)
题目链接=>戳这里题目截图解析动态规划四步走:1.问题拆解:我们到达第n个楼梯可以从第n-1个或者第n-2个楼梯到达,因此对第N个问题的求解就变成了对第n-1个问题和第n-2个问题的求解;2.状态定义:从起点到达第n个楼梯的方法总数=从起点到达第n-1个楼梯的方法总数+从起点到达第n-2个楼梯的方法总数;3.递推方程dp[n]=dp[n-2]+dp[n-1];4.实现在实现过程,除了关键性的递推方
沙漠小舟
·
2020-04-05 00:25
leetcode-
面试题6-从尾到头打印链表
题目描述:java/***Definitionforsingly-linkedlist.*publicclassListNode{*intval;*ListNodenext;*ListNode(intx){val=x;}*}*/classSolution{publicint[]reversePrint(ListNodehead){Stackstack=newStack<>();while(head
真不知道叫啥好
·
2020-04-02 17:00
FreeCodeCamp
初级算法
题 - 翻转字符串
原文链接:http://singsing.io/blog/2017/03/17/fcc-basic-reverse-a-string/翻转字符串(ReverseaString)题目链接中文链接英文链接级别:初级(BasicAlgorithmScripting)问题解释这个function接收一个字符串参数,返回翻转后的字符串比如接收的是"hello",那么输出就是"olleh"参考链接String
S1ngS1ng
·
2020-04-02 17:50
leetcode-
只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。你可以不使用额外空间来实现吗?示例1:输入:[2,2,1]输出:1示例2:输入:[4,1,2,1,2]输出:4代码=》异或运算/***@param{number[]}nums*@return{number}*/varsingleNumber=function(
8239e604d437
·
2020-04-01 06:02
leetcode探索之旅(队列)
首先,题目都是出自leetcode的探索里的
初级算法
的课程。嘿嘿,有心想学的请自行前往学习,光看是没用的。
威宸
·
2020-03-31 12:54
LeetCode-
twoSum-python
DescriptionGivenanarrayofintegers,returnindicesofthetwonumberssuchthattheyadduptoaspecifictarget.Youmayassumethateachinputwouldhaveexactlyonesolution,andyoumaynotusethesameelementtwice.Example:Givennu
靳晓阳s
·
2020-03-29 07:34
leetcode-
求取二叉树的最短路径问题
该类问题属于树的遍历问题题目Givenabinarytree,finditsminimumdepth.Theminimumdepthisthenumberofnodesalongtheshortestpathfromtherootnodedowntothenearestleafnode.#include//DefinitionforbinarytreestructTreeNode{intval;T
lintong
·
2020-03-25 16:56
leetcode-cli 安装插件
github.com:skygragon/leetcode-cli-plugins.git2把clone下来项目中的plugins内的js文件拷贝到/usr/local/lib/node_modules/
leetcode
吴邪_TicktW
·
2020-03-22 15:45
LeetCode-
链表
LeetCode-
链表链表(LinkedList)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。
raincoffee
·
2020-03-21 11:11
初级算法
(一)(数组篇)
移动零:给定一个数组nums,编写一个函数将所有0移动到它的末尾,同时保持非零元素的相对顺序。例如,定义nums=[0,1,0,3,12],调用函数之后,nums应为[1,3,12,0,0]。注意事项:1.必须在原数组上操作,不要为一个新数组分配额外空间。2尽量减少操作总数。classSolution{publicvoidmoveZeroes(int[]nums){inta=0;for(inti=
林祖朋
·
2020-03-21 05:45
26.从排序数组中删除重复项
前言:从20题之后就没再按照顺序来做了,准备先把
初级算法
先写完。一、题目原型:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。
花果山松鼠
·
2020-03-19 23:06
LeetCode-
机器人能否返回原点
在二维平面上,有一个机器人从原点(0,0)开始。给出它的移动顺序,判断这个机器人在完成移动后是否在(0,0)处结束。移动顺序由字符串表示。字符move[i]表示其第i次移动。机器人的有效动作有R(右),L(左),U(上)和D(下)。如果机器人在完成所有动作后返回原点,则返回true。否则,返回false。注意:机器人“面朝”的方向无关紧要。“R”将始终使机器人向右移动一次,“L”将始终向左移动等。
G_dalx
·
2020-03-15 02:36
LeetCode-
第十一题:Container With Most Water
题目题目.png题意是说有n个非负的整数,他们分别以(i,ai)组成了n个点,每个点和(i,0)组成了垂直于x轴的直线,选取其中的两条直线和X轴会组成一个凹槽,问凹槽能装多少水。这题其实是求两条直线和X轴能够形成的最大面积,宽是两个点之间X轴差的绝对值。高是两个点中Y轴值最小的值。返回形成最大面积的值。如下图中的A点和H点(area=H*W=min(HA,HG)x(8-1)=1x7=7分析图示.p
baixiaoshuai
·
2020-03-14 10:28
LeetCode-
正则表达式匹配-Java
这题是《剑指Offer》的原题,在LeetCode上属于hard难度,虽然面试可能不会考到这种题目,但能够很好地训练自己的思维~书中的解法是递归,但因为没有剪掉重复问题的结果,导致时间开销巨大,LeetCode上测试大概3秒,相比之下,动态规划只用了3ms,这也足以看出动态规划的剪枝对减少运行时间的作用是巨大的。首先分析这道题为什么是动态规划:例如,s="abc"p="abc",我们会从前向后逐个
HashWhale
·
2020-03-12 20:49
leetcode-
动态规划3
今天是做动态规划做到发疯发狂失去理智的一天。动态规划就是后一步要用到前一步的结果139.单词拆分给定一个非空字符串s和一个包含非空单词列表的字典wordDict,判定s是否可以被空格拆分为一个或多个在字典中出现的单词。拆分时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。这道题的思路跟之前的凑零钱,凑完全平方数的和的解法类似,都是第n步时,有多种n-1步的情况,所以需要遍历不同的情况,然
sigedengpao
·
2020-03-09 23:38
leetcode
动态规划
LeetCode-
算法-简单-两数之和(1)
给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定nums=[2,7,11,15],target=9因为nums[0]+nums[1]=2+7=9所以返回[0,1]1、两遍循环publicint[]twoSum(int[]nums,inttarge
kiko_兔兔
·
2020-03-09 20:16
LeetCode
LeetCode-
面试题 16.19. 水域大小-深度优先搜索
/**面试题16.19.水域大小*@author作者Your-Name:*@version创建时间:2020年3月3日上午10:27:57*你有一个用于表示一片土地的整数矩阵land,该矩阵中每个点的值代表对应地点的海拔高度。若值为0则表示水域。由垂直、水平或对角连接的水域为池塘。池塘的大小是指相连接的水域的个数。编写一个方法来计算矩阵中所有池塘的大小,返回值需要从小到大排序。示例:输入:[[0,
Lin769440473
·
2020-03-06 11:02
java
leetcode
LeetCode-
滑动窗口类题汇总
模板:初始左指针(left)和右指针(right)都指向0右指针不断向右移动当满足窗口大小时候,进行相应的处理,这个和过程中需要left向右移动defsliding_window(window_size,array):left,right=0,0res=0whilerightwindow_sizeorn==window_size:...left+=1#右移leftres=max(res,xxx).
Rnan-prince
·
2020-02-29 18:41
python
题库
滑动窗口
leetcode-
四数相加II
题目来自LeetCode,链接:四数相和II。具体描述为:给定四个包含整数的数组列表A,B,C,D,计算有多少个元组(i,j,k,l),使得A[i]+B[j]+C[k]+D[l]=0。为了使问题简单化,所有的A,B,C,D具有相同的长度N,且0≤N≤500。所有整数的范围在−228-2^{28}−228到228−12^{28}-1228−1之间,最终结果不会超过231−12^{31}-1231−
JR_Chan
·
2020-02-29 15:00
LeetCode
python
leetcode
java
算法
数据结构
Swift 买卖股票的最佳时机 II
开始学习算法,在LeetCode中开始做
初级算法
这一章节,将做的题目在此做个笔记吧。买卖股票的最佳时机II假设有一个数组,它的第i个元素是一个给定的股票在第i天的价格。设计一个算法来找到最大的利润。
韦弦Zhy
·
2020-02-27 20:27
《算法4》2.1 - 选择排序算法(Selection Sort), Python实现
选择排序算法(SelectionSort)是排序算法的一种
初级算法
。虽然比较简单,但是基础,理解了有助于后面学习更高深算法,勿以勿小而不为。
不忘初心2017
·
2020-02-21 09:45
LeetCode-
回文链表_进阶
请判断一个链表是否为回文链表。示例1:输入:1->2输出:false示例2:输入:1->2->2->1输出:true进阶:你能否用O(n)时间复杂度和O(1)空间复杂度解决此题?来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/palindrome-linked-list著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。O(1)
凭江仙
·
2020-02-18 21:10
数学与算法
leetcode
算法
链表
回文串
双指针
LeetCode算法:数组
最新内容快捷入口:图片平滑器本文内容摘选自
LeetCode-
数组所谓数组,是有序的元素序列。若将有限个类型相同的变量的集合命名,那么这个名称为数组名。
SirWwh
·
2020-02-16 05:06
初级算法
-floyd-warshall
问题描述城市有的之间有路,有的没有,所有信息用矩阵存储。if1到2路程为2,那么e[1][2].image.png问题解释解题思路可用n*n深度,或者广度优先搜索.floyd-warshall计算a到b最短距离,引入第三个点(定点k),通过该定点中转a——k——b、image.png则可能缩短,同时我们也可以通过引入两点或者多个点。算法的核心思路是循环遍历。假设任意两点只允许经过1号顶点,只需要判
一书文集
·
2020-02-16 05:50
【Leetcode
初级算法
】3-旋转数组
给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。示例1:输入:[1,2,3,4,5,6,7]和k=3输出:[5,6,7,1,2,3,4]解释:向右旋转1步:[7,1,2,3,4,5,6]向右旋转2步:[6,7,1,2,3,4,5]向右旋转3步:[5,6,7,1,2,3,4]思路:这道题是一道比较经典的题目,网上流传了三种方法,我自己一开始是按照第二种思路来思考这道问题的。第一种思路是
小流
·
2020-02-14 12:48
「LeetCode 002」两数相加
示例:输入:(2->4->3)+(5->6->4)输出:7->0->8原因:342+465=807来源:力扣(LeetCode)https://
leetcode-
xuzhougeng
·
2020-02-12 23:57
leetcode-
报数
报数序列是一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下:1.12.113.214.12115.1112211被读作"one1"("一个一"),即11。11被读作"two1s"("两个一"),即21。21被读作"one2","one1"("一个二","一个一"),即1211。给定一个正整数n(1≤n≤30),输出报数序列的第n项。注意:整数顺序将表示为一个字符串。示例1:输
8239e604d437
·
2020-02-12 16:28
上一页
38
39
40
41
42
43
44
45
下一页
按字母分类:
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
其他