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
leedCode
运算 ---
Leedcode
7 整数反转
题目给出一个32位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入:123输出:321示例2:输入:-123输出:-321示例3:输入:120输出:21注意:假设我们的环境只能存储得下32位的有符号整数,则其数值范围为[−231,231−1]。请根据这个假设,如果反转后整数溢出那么就返回0。解析/*1、先判断符号:使用Math.sign判断符号2、对绝对值进行:字符串->数组->
crazy的蓝色梦想
·
2020-08-17 02:52
数据结构与算法
Leedcode
第62题——不同路径(100%击败率,动态规划解法)
Leedcode
第62题——不同路径(100%击败率,动态规划解法)话不多说先看算法效率:题目描述:一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。
I am jack
·
2020-08-16 08:28
#
动态规划
LeedCode
第60题——第K个排列(100%效率,看了绝不后悔的好文)
LeedCode
第60题——第K个排列话不多说先看一下我的算法效率:题目描述如下:给出集合[1,2,3,…,n],其所有元素共有n!种排列。
I am jack
·
2020-08-16 08:56
#
回溯法
leedCode
刷题笔记——反转链表(easy)
反转一个单链表。示例:输入:1->2->3->4->5->NULL输出:5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?这个题目考研的时候还复习过,然而忘记了…(我还能记得啥???)参考:https://cloud.tencent.com/developer/article/14501131.通过循环,通过三个指针对链表进行遍历并逐个反转(一开始
遥光_icon
·
2020-08-16 03:52
leetcode
树 ---
leedcode
572 子树 (Easy)
题目给定两个非空二叉树s和t,检验s中是否包含和t具有相同结构和节点值的子树。s的一个子树包括s的一个节点和这个节点的所有子孙。s也可以看做它自身的一棵子树。示例1:给定的树s:3/\45/\12给定的树t:4/\12返回true,因为t与s的一个子树拥有相同的结构和节点值。示例2:给定的树s:3/\45/\12/0给定的树t:4/\12返回false。解析思路:双重递归对每一个节点当作根节点都进
crazy的蓝色梦想
·
2020-08-16 01:38
#
树
LeedCode
数据结构-字符串
1.两个字符串包含的字符是否完全相同242.ValidAnagram(Easy)Leetcode/力扣s="anagram",t="nagaram",returntrue.s="rat",t="car",returnfalse.可以用HashMap来映射字符与出现次数,然后比较两个字符串出现的字符数量是否相同。由于本题的字符串只包含26个小写字符,因此可以使用长度为26的整型数组对字符串出现的字符
王祖龙Jason
·
2020-08-14 18:55
数据结构算法
LeedCode
算法思想-双指针
文章目录1.有序数组的TwoSum2.两数平方和3.反转字符串中的元音字符4.回文字符串5.归并两个有序数组6.判断链表是否存在环7.最长子序列双指针主要用于遍历数组,两个指针指向不同的元素,从而协同完成任务。1.有序数组的TwoSum167.TwoSumII-Inputarrayissorted(Easy)Leetcode/力扣Input:numbers={2,7,11,15},target=9
王祖龙Jason
·
2020-08-14 18:55
数据结构算法
[
Leedcode
][JAVA][第84题][柱状图中最大的矩形][暴力][单调栈]
【问题描述】[困难]给定n个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为1。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为1,给定的高度为[2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为10个单位。输入:[2,1,5,6,2,3]输出:10来源:力扣(LeetCode)【解答思路】1.暴力可以枚举以每个柱形
CryptWinter
·
2020-08-14 04:36
刷题
非0即1
常用的算法竞赛、ACM,程序设计刷题网站集锦
/bailian.openjudge.cn/3.计蒜客https://www.jisuanke.com/4.洛谷https://www.luogu.com.cn/training/mainpage5.
leedcode
https
种花家的奋斗兔
·
2020-08-14 04:37
ACM
Leedcode
(初级算法-字符串9): 最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串“”。示例1:输入:[“flower”,“flow”,“flight”]输出:“fl”示例2:输入:[“dog”,“racecar”,“car”]输出:“”解释:输入不存在公共前缀。说明:所有输入只包含小写字母a-z。解法classSolution:deflongestCommonPrefix(self,strs:Lis
vvvvv呀
·
2020-08-13 22:55
Leedcode
Python3
(LeetCode 8) C++实现字符串转整数
LeedCode
的第八题:请你来实现一个atoi函数,使其能将字符串转换成整数。
Hunter Dreamer
·
2020-08-13 17:16
LeedCode
42-接雨水
接雨水题意:给定n个非负整数表示每个宽度为1的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。上面是由数组[0,1,0,2,1,0,1,3,2,1,2,1]表示的高度图,在这种情况下,可以接6个单位的雨水(蓝色部分表示雨水)输入:输入:[0,1,0,2,1,0,1,3,2,1,2,1]输出:6输出:9解题思路:每一个位置能乘多少水取决于,当前位置左边的最大高度leftMaxHeight和右
子灬丶逾
·
2020-08-13 17:53
数据结构
leetcode
leedcode
2. 两数相加 - 链表式 大数相加
题目描述给出两个非空的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字0之外,这两个数都不会以0开头。示例:输入:(2->4->3)+(5->6->4)输出:7->0->8原因:342+465=807主要考察点:链表(指针),大数相加代码1:/***Def
obsorb_knowledge
·
2020-08-13 16:32
leedcode
Leedcode
#118 杨辉三角
答案:classSolution{publicList>generate(intnumRows){Listlist=newArrayList();List>list1=newArrayList>();if(numRowslist2=newArrayList();//循环外层声明内层的集合,内层的集合用来存取整数for(intn=0;ntemp=list1.get(i-1);list2.add(te
深渊大爆炸
·
2020-08-12 00:03
java
基本算法——深度优先搜索(DFS)和广度优先搜索(BFS)(
LeedCode
200)
——个人学习笔记参考:https://www.jianshu.com/p/bff70b786bb6简单归纳:深度就是一直向下查找,只要能向下查找就先向下;广度就是先把本层查找完再向下,和本层相同层次的也要查找完才向下查找。题目:https://leetcode-cn.com/problems/number-of-islands/其实思路很简单,但是要区分深度和广度还是有一点难度。思路参考:http
东菇
·
2020-08-11 14:41
笔记
LeedCode
深度优先搜索
广度优先搜索
C++
Python面试——剑指offer&
leedcode
刷题整理(动态规划)
1、变位词判断两个单词是否是变位词s1='abcde's2='acbde'test=AnagramDetection()方法一:classAnagramDetection:#先对两个字符串进行list化#对字符串对应的两个list进行排序#依次比较字符是否匹配defanagramSolution1(self,s1,s2):alist1=list(s1)alist2=list(s2)alist1.s
qq_36117775
·
2020-08-11 03:44
Python面试
Python面试——剑指offer&
leedcode
刷题整理(链表)
1、相交链表leetcode160题注意:如果两个链表没有交点,返回null.在返回结果后,两个链表仍须保持原有的结构。可假定整个链表结构中没有循环。程序尽量满足O(n)时间复杂度,且仅用O(1)内存。classSolution(object):defgetIntersectionNode(self,headA,headB):""":typehead1,head1:ListNode:rtype:L
qq_36117775
·
2020-08-11 03:12
Python面试
[
Leedcode
][JAVA][面试题 16.18][模式匹配][字符串][枚举]
【问题描述】[中等]你有两个字符串,即pattern和value。pattern字符串由字母"a"和"b"组成,用于描述字符串中的模式。例如,字符串"catcatgocatgo"匹配模式"aabab"(其中"cat"是"a","go"是"b"),该字符串也匹配像"a"、"ab"和"b"这样的模式。但需注意"a"和"b"不能同时表示相同的字符串。编写一个方法判断value字符串是否匹配pattern
CryptWinter
·
2020-08-10 16:29
非0即1
刷题
二刷剑指Offer:剑指Offer+LeetCode(全53题)
文章目录剑指Offer刷题67.剪绳子(贪心算法)66.机器人的运动范围(dfs)65.矩阵中的路径(回溯算法)64.滑动窗口的最大值(双端队列)63.数据流中的中位数62.二叉搜索树的第k大节点(
Leedcode
茶花女~
·
2020-08-10 00:38
剑指Offer
LeedCode
刷题:443.压缩字符串
将相同字符统计出个数放在字符后,原地修改解题思路:双指针做法,read和write指针1classSolution{2publicintcompress(char[]chars){3intwrite=0;//写指针4intanchor=0;//指向连续字符的第一个5for(intread=0;readanchor){//写入连续字符长度9for(charc:(""+(read-anchor+1))
nilbook
·
2020-08-09 17:00
双指针 ---
leedcode
283 移动零
题目给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入:[0,1,0,3,12]输出:[1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。解答双指针i、ji遍历整个数组上nums[i]!=0时,将nums[j]=nums[i],并且j++最后,i遍历完后,把j以后剩余的位置赋值为0varmoveZeroes=fun
crazy的蓝色梦想
·
2020-08-08 20:40
#
双指针
LeedCode
刷题:640.求解方程
解题思路:1.先将表达式里的减号“-”用replaceAll全换成“+-”,可以简化减号和加号运算2.将方程式以=分为左右两个式子后,再将两个式子以“+”号分割成两个字符串数组leftArray和rightArray来进行cal计算3.将每个式子的x的系数和常数d的系数以cal方法计算出来,读取字符串part[i],处理含x和不含x的项,通过iscontainsX方法判断含x,方法最终返回一个{x
nilbook
·
2020-08-07 02:00
LeedCode
刷题:100.相同的树
递归解法:/***Definitionforabinarytreenode.*publicclassTreeNode{*intval;*TreeNodeleft;*TreeNoderight;*TreeNode(){}*TreeNode(intval){this.val=val;}*TreeNode(intval,TreeNodeleft,TreeNoderight){*this.val=val;
nilbook
·
2020-08-07 01:00
LeedCode
刷题:537.复数乘法
利用库函数,string.split(charch),以ch为分割符,将字符串分割后存入string数组再利用split将i去除掉1classSolution{2publicStringcomplexNumberMultiply(Stringa,Stringb){3String[]s1=a.split("\\+");4String[]s2=b.split("\\+");5intA=Integer.
nilbook
·
2020-08-06 02:00
LeedCode
刷题 553.最优除法
数学题:让连除结果最大,则分母最小即可而从第二个数以后全是分母,第一个数是分子,从第二个数到最后就全部括起来做分母1classSolution{2publicStringoptimalDivision(int[]nums){3if(nums.length==1)4returnnums[0]+"";5if(nums.length==2)6returnnums[0]+"/"+nums[1];7Stri
nilbook
·
2020-08-06 01:00
LeedCode
刷题:337.打家劫舍Ⅲ
由题意知:一、暴力法:根结点是爷爷,根结点的左右孩子结点是两个孩子,孩子的孩子是孙子所以比较四个孙子vs两个儿子这两个组合谁得钱多,就当做当前结点的最大钱数,4个孙子投的钱加上爷爷的钱如下intmethod1=root.val+rob(root.left.left)+rob(root.left.right)+rob(root.right.left)+rob(root.right.right)两个儿
nilbook
·
2020-08-06 01:00
Leedcode
编程题-剑指 Offer 32 - I. 从上到下打印二叉树----C++实现
目的:旨在记录在
Leedcode
网上刷题的过程,记录心得。题目:从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行。
swety_gxy
·
2020-08-05 02:26
C++
leetcode刷题
Leedcode
-剑指 Offer 25. 合并两个排序的链表----C++实现
目的旨在记录在
Leedcode
网上刷题的过程,记录心得。题目输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。
swety_gxy
·
2020-08-05 02:26
leetcode刷题
C++
Leedcode
编程题-剑指 Offer 32 - II. 从上到下打印二叉树 II----C++实现
目的:旨在记录在
Leedcode
网上刷题的过程,记录心得。题目:从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行。
swety_gxy
·
2020-08-05 02:26
C++
leetcode刷题
Leedcode
编程题-剑指 Offer 07 - 重建二叉树----C++实现
目的:旨在记录在
Leedcode
网上刷题的过程,记录心得。题目:输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。
swety_gxy
·
2020-08-05 02:26
leetcode刷题
LeedCode
题目
486.PredicttheWinnerpackage
leedcode
;publicclassPredictTheWinner486{publicbooleanPredictTheWinner(int[
acceptedwwh
·
2020-08-01 03:33
LeetCode
Leedcode
_remove_duplicates_from_sortted_array
/***@briefRemoveDuplicatesfromSortedArray**parameterArray*///int#defineNumber1000intremoveDuplicateSArray(intArray[Number],int_len)//必须给出数组的实际大小,不然不满足sorted这个条件{int_index=0;if(sizeof(Array)2){}else{_a
Jaey
·
2020-07-31 10:27
c++
c++
图解三数之和问题
思考由于最近身边的人都在各种面试,被面试算法题折腾的够呛,日常
LeedCode
,个人也刷了一段时间的
LeedCode
,刚开始想着不看题解自己做,然后只能想到暴力破解法,其他思路几天也憋不出来。
漂流的云
·
2020-07-29 22:40
算法
我在
leedcode
上所刷过的题
一.1.题目Now,givenalistofwords,eachwordcanbewrittenasaconcatenationoftheMorsecodeofeachletter.Forexample,"cab"canbewrittenas"-.-.-....-",(whichistheconcatenation"-.-."+"-..."+".-").We'llcallsuchaconcaten
凉拌姨妈好吃
·
2020-07-28 21:11
(go) 嵌套map,结合
leedcode
第36题有效的数独
原题链接:link.使用map记录数独//方法1初始化一个空的多维映射funcisValidSudoku(board[][]byte)bool{row:=map[int]map[byte]int{}//存放column:=map[int]map[byte]int{}box:=map[int]map[byte]int{}fori:=0;i<9;i++{row[i]=map[byte]int{}col
harbours
·
2020-07-15 23:05
Golang
数据结构
数据结构
Leedcode
每日一题 —— 最大子序和
给定一个整数数组nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入:[-2,1,-3,4,-1,2,1,-5,4],输出:6解释: 连续子数组 [4,-1,2,1]的和最大,为 6。提交代码:动态规划,最基本的题,dp数组代表该以该位置结尾的子序列的最大和classSolution{public:intmaxSubArray(vector&nums){ve
Double_Bear
·
2020-07-15 15:41
leedcode
目录栈496.下一个更大元素I1021.删除最外层的括号1047.删除字符串中的所有相邻重复项堆队列字符串图1042、不邻接植花广度优先搜索算法BFS107、二叉树的层次遍历IIDFS993.二叉树的堂兄弟节点AVLV.S.RB-Tree动态规划121.买卖股票的最佳时机746.使用最小花费爬楼梯1025、除数博弈栈496.下一个更大元素I题目描述给定两个没有重复元素的数组nums1和nums2,
syqnyue
·
2020-07-12 00:44
python
求两数之和(
leedcode
)
算法就像你在纸上计算两个数字的和那样,我们首先从最低有效位也就是列表l1l1和l2l2的表头开始相加。由于每位数字都应当处于0\ldots90…9的范围内,我们计算两个数字的和时可能会出现“溢出”。例如,5+7=125+7=12。在这种情况下,我们会将当前位的数值设置为22,并将进位carry=1carry=1带入下一次迭代。进位carrycarry必定是00或11,这是因为两个数字相加(考虑到进
java不白吃
·
2020-07-07 22:00
leedcode
简单一(1-20)
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-common-prefix著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。1-1、两数之和:给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用
chilm123
·
2020-07-07 20:43
Leedcode
[
Leedcode
][JAVA][第200题][岛屿数量][DFS][BFS][并查集]
【问题描述】第200题岛屿数量给你一个由 '1'(陆地)和'0'(水)组成的的二维网格,请你计算网格中岛屿的数量。岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。此外,你可以假设该网格的四条边均被水包围。示例1:输入:11110110101100000000输出: 1示例 2:输入:11000110000010000011输出:3解释:每座岛屿只能由水平和/或竖直方
CryptWinter
·
2020-07-07 06:21
非0即1
刷题
java
数据结构
leedcode
LeedCode
【021】【MergeTwoSortedLists】
一、原题要求:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4,1->3->4输出:1->1->2->3->4->4解题思路*使用头结点root进行辅助操作,创建一个头结点,再使用两个引用指向两个链表的头结点,*将较小的结点值的结点摘下来接到root链表的末尾,同时被摘的链头引用移动到下一个结点,*一直操作,到到原先两个链表中有
Zero_975
·
2020-07-07 01:42
LeedCode
LeetCode——Reverse Integer
LeetCode——ReverseInteger
Leedcode
第七题:题目如下:Reversedigitsofaninteger.Example1:x=123,return321Example2:x=
cassiePython
·
2020-07-06 16:30
算法
leedcode
-双指针
双指针简介分为两类:快慢指针:主要解决链表中的问题左右指针:主要解决数组/字符串中的问题快慢指针判断链表中是否含有环借助哈希表(判断哈希表中是否含有当前节点)使用快慢指针(快指针每次走两步,如果有环,二者会相遇)已知链表中含有环,返回这个环的起始位置思路:先寻找快慢指针相遇的点当二者相遇时,让其中一指针指向头节点,然后以相同的速度前进,再次相遇时所在的节点位置就是环开始的位置证明:第一次相遇,假设
qinjunu
·
2020-07-05 02:09
leedcode
leedcode
-区间
算出这些区间中最多有几个互不相交的区间排序:按end排序思想:从区间集合中选择一个区间x,这个x是当前所有区间中结束最早的(end最小)把所有与x区间相交的区间从集合中删除重复步骤1和2,直到集合为空
leedcode
qinjunu
·
2020-07-05 02:38
leedcode
leedcode
-二叉树
(代码粘贴过来没有缩进=-=!手动添加的缩进,缩进可能有误)基本方法由数组构造二叉树(null用0表示)先序,中序,后序,层次遍历(递归,迭代)深度publicclassTreeNode{publicintval;publicTreeNodeleft;publicTreeNoderight;publicTreeNode(intx){val=x;}}构建二叉树publicTreeNodecreate
qinjunu
·
2020-07-05 02:38
leedcode
LeedCode
_初级算法_数组_两个(Intersection of Tw)_6
6.两个数组的交集II给定两个数组,编写一个函数来计算它们的交集。示例1:输入:nums1=[1,2,2,1],nums2=[2,2]输出:[2,2]示例2:输入:nums1=[4,9,5],nums2=[9,4,9,8,4]输出:[4,9]说明:输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。我们可以不考虑输出结果的顺序。进阶:如果给定的数组已经排好序呢?你将如何优化你的算法?
k5722166
·
2020-07-04 20:18
leedCode
LeedCode初级算法笔记
leedcode
-并查集
并查集实现parent:记录每个节点的父节点size:记录每棵树的重量,目的是union后树依然保持平衡性路径压缩:保证任意数的高度为常数publicclassUF{//连通分量个数privateintcount;//存储一个树privateint[]parent;//记录树的重量(将小一些的树接到大一些的树下面)privateint[]size;publicUF(intn){this.count
qinjunu
·
2020-07-04 01:45
Java
leedcode
-栈
括号的合法性单括号记录左右括号个数,当右括号个数大于左括号个数,返回false多括号publicbooleanisValid(Strings){HashMapmap=newHashMapstack=newStack<>();for(charc:s.toCharArray()){if(map.containsKey(c)){stack.add(c);}else{if(!stack.isEmpty()
qinjunu
·
2020-07-04 01:45
leedcode
leedcode
-链表
反转链表(
leedcode
-206)创建一个newHead,在头节点逐个插入publicListNodereverseList1(ListNodehead){ListNodenewHead=null;ListNodep1
qinjunu
·
2020-07-04 01:13
leedcode
leedcode
-贪心算法
区间调度区间调度详解跳跃游戏
leedcode
-55问题描述:给定一个非负整数数组,最初位于数组的第一个位置,数组中的每个元素代表你在该位置可以跳跃的最长长度,判断是否能够到达最后一个位置思路1从后往前遍历
qinjunu
·
2020-07-04 01:13
leedcode
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他