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-
双指针-905.按奇偶排序数组
给定一个非负整数数组A,返回一个由A的所有偶数元素组成的数组,后面跟A的所有奇数元素。你可以返回满足此条件的任何数组作为答案。输入:[3,1,2,4]输出:[2,4,3,1]输出[4,2,3,1],[2,4,1,3]和[4,2,1,3]也会被接受。思路:用i指向0,j指向数组末尾如果A[i]是奇数,A[j]是偶数,就交换A[i]是偶数就i++;A[j]是奇数就j--解答:vectorsortArr
图像与视觉InSight
·
2020-08-20 00:31
leetcode大赏
leetcode-数组
leetCode-
删除排序数组中的重复项
C语言intremoveDuplicates(int*nums,intnumsSize){inti,j;//利用双指针if(numsSize==0)returnnumsSize;for(i=0,j=1;j&nums){intsize=nums.size();intcnt=0;//统计当前元素需要前移的位数,注意还是计数排序思想for(inti=1;iint:ifnotnums:return0i=0
莫陌莫墨
·
2020-08-20 00:54
LeetCode
数据结构基础
(12) --双向循环链表的设计与实现
双向链表的操作特点:(1)“查询”和单链表相同;(2)“插入”和“删除”时需要同时修改两个方向上的指针。但是对于双向循环链表则在表尾插入非常的迅速,只需O(1)的时间,因为有指向前面的指针,因此双向循环链表会很容易的找到位于表尾的元素,因此双向循环链表比较适用于频繁在表尾插入的情况.空链表:双向循环链表节点构造:[cpp]viewplaincopyclassDoubleListNode{priva
SpringWar
·
2020-08-19 23:32
算法与数据结构
LeetCode-
最长有效括号
给定一个只包含‘(’和‘)’的字符串,找出最长的包含有效括号的子串的长度。示例1:输入:“(()”输出:2解释:最长有效括号子串为“()”示例2:输入:“)()())”输出:4解释:最长有效括号子串为“()()”来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-valid-parentheses著作权归领扣网络所有。商业转载请联系
Xu ang
·
2020-08-19 23:39
蓝桥
LeetCode-
【动态规划】-目标和
给定一个非负整数数组,a1,a2,...,an,和一个目标数,S。现在你有两个符号+和-。对于数组中的任意一个整数,你都可以从+或-中选择一个符号添加在前面。返回可以使最终数组和为目标数S的所有添加符号的方法数。示例1:输入:nums:[1,1,1,1,1],S:3输出:5解释:-1+1+1+1+1=3+1-1+1+1+1=3+1+1-1+1+1=3+1+1+1-1+1=3+1+1+1+1-1=3
唐家威少
·
2020-08-19 23:42
LeetCode
DP(动态规划)
leetcode-
第一个错误版本
你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有n个版本[1,2,…,n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用boolisBadVersion(version)接口来判断版本号version是否在单元测试中出错。实现一个函数来查找第一个错误的
Lee_jiaqi
·
2020-08-19 23:05
Leetcode
leetcode-
寻找比目标字母大的最小的字母(分治法)
题目:给定一个只包含小写字母的有序数组letters和一个目标字母target,寻找有序数组里面比目标字母大的最小字母。数组里字母的顺序是循环的。举个例子,如果目标字母target=‘z’并且有序数组为letters=[‘a’,‘b’],则答案返回‘a’。示例:输入:letters=[“c”,“f”,“j”]target=“a”输出:“c”输入:letters=[“c”,“f”,“j”]targe
Lee_jiaqi
·
2020-08-19 23:05
Leetcode
leetcode-
在排序数组中查找元素的第一个和最后一个位置
题目:给定一个按照升序排列的整数数组nums,和一个目标值target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是O(logn)级别。如果数组中不存在目标值,返回[-1,-1]。示例1:输入:nums=[5,7,7,8,8,10],target=8输出:[3,4]示例2:输入:nums=[5,7,7,8,8,10],target=6输出:[-1,-1]题解:实现一个查找目
Lee_jiaqi
·
2020-08-19 23:05
Leetcode
leetcode-
有效的括号
https://leetcode-cn.com/problems/valid-parentheses/description/classSolution{public:boolisValid(strings){stackss;//charstack[1000];//inttop=0;intlen=s.length();intflag=1;inti=0;while(i
Co_zy
·
2020-08-19 21:14
Leetcode-
动态规划
leetcode5-最长回文子串给定一个字符串s,找到s中最长的回文子串。你可以假设s的最大长度为1000。算法设计:遍历字符串s,以当前点i为中点向两端遍历;记录中心点i的回文字符串左右标记l,r;计算长度更新长度大于以前遍历的l,r端点;遍历完后返回s[l:r].源代码:deflongestPalindrome(self,s):""":types:str:rtype:str"""#edgeca
thxiong1234
·
2020-08-19 20:08
Python
leetcode-
动态规划(一)
一、动态规划类型总结1、计数(1)有多少方式走到右下角(2)有多少种方法选出k个数和为sum2、求最大最小值(1)从左上角走到右下角路径的最大数字和(2)最长上升子序列长度3、求存在性(1)取石子游戏,先手是否必胜(2)能不能选出k个数和为sum二、细分1、坐标型(1)、UniuqePaths1、22、序列型(1)、PaintHouse1、2(2)、HouseRobber1、2(3)、TheBes
winner8881
·
2020-08-19 18:39
数据结构
leetcode-
动态规划
近期在刷leetcode,偶尔会遇到一些动态规划的问题。动态规划的特点就是整体问题求解能划分为若干个子问题求解,并且整体最优解依赖于若干个子问题的最优解,子问题间也许存在重叠。所以动态规划一个非常重要的点就在于如何划分出子问题。此篇博客记录了我在刷leetcode动态规划专题时easy级别和部分medium级别的题目,我也正尝试着从这些题目中归纳总结出动态规划的精髓。198.HouseRobber
JJprincess
·
2020-08-19 16:44
leetcode
(有效括号问题)(
数据结构基础
回顾)
给定一个只包括'(',')','{','}','[',']'的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例1:输入:"()"输出:true示例2:输入:"()[]{}"输出:true示例3:输入:"(]"输出:false示例4:输入:"([)]"输出:false示例5:输入:"{[]}"输出:tr
光丿之晨曦。
·
2020-08-19 08:39
数据结构基础
栈
数据结构
LeetCode-
回文对
字典树写法:classSolution{//使用字典树(也叫前缀树)来解决此问题//首先构建字典树,实现insert和search方法classNode{//表示字母在字典树中的索引int[]pos=newint[26];//flag表示当前字符串对应的words中的索引intflag;publicNode(){flag=-1;}}//创建一棵字典树,trie.get(p)代表p处的结点Listt
神蜗牛
·
2020-08-19 06:45
算法
LeetCode
Leetcode-
大数运算-415. 字符串相加
Leetcode-
大数运算-415.字符串相加题目题解代码其他题目字符串相加给定两个字符串形式的非负整数num1和num2,计算它们的和。
失去斗志的菜鸟
·
2020-08-19 03:30
#
LeetCode
LEETCODE-
简单级别
1、两个数交换,不用tempx=x^y;y=x^y;x=x^y;x^=y;y^=x;x^=y;2、string数字转整形数据stringtemp="-123456";intoutput=atoi(temp.c_str());//也可以用stoi就不用换成char*intoutput=stoi(temp);3、string提取某一段子stringstringtemp="HELLO";temp=tem
Mr.Naruto
·
2020-08-19 03:19
lEETCODE刷题
数据结构例程——二叉排序树
本文是[
数据结构基础
系列(8):查找]中第6、7课时[二叉排序树]的例程。
weixin_33964094
·
2020-08-18 22:29
数据结构基础
之二叉排序树的应用
设计算法以构造有n个元素(下标范围从1到n)的二分查找判定树voidbstFromArr(btNode*&T,elementTypeA[],intlow,inthigh){intmid;//先应用二叉查找的算法if(lowdata=A[mid];T->lChild=NULL;T->rChild=NULL;bstFromArr(T->lChild,A,low,mid-1);//递归创建左子树bstF
明净止水以澄心
·
2020-08-18 21:34
数据结构基础
深信服一面
2.
数据结构基础
(1)请简述数组与链表的区别链表是一种上一个元素的引用指向下一个元素的存储结构,链表通过指针来连接元素与元素;链表是线性表的一种,所谓的线性表包含顺序线性表和链表,顺序线性表是用数组实现的
Martin-wwh
·
2020-08-18 16:46
面试集锦
听说你要学数据结构了,确定不用我帮你一把?图灵九本书 + 可视化平台 + 海量题库推荐
文章目录前言亲身经历书数据结构与算法分析-C语言描述(新手友好)
数据结构基础
(不适合新手)大话数据结构(新手入门)可视化平台DataStructureVisualizationsvisualgoBinaryTreeGraphAlgorithmVisualizerAlgorithms-DataStructures-BigONotation
看,未来
·
2020-08-18 13:52
算法/数构
数据结构
算法
可视化
leetcode-
分割字符串的最大得分
题目是LeetCode第186场周赛的第一题,链接:分割字符串的最大得分。具体描述为:给你一个由若干0和1组成的字符串s,请你计算并返回将该字符串分割成两个非空子字符串(即左子字符串和右子字符串)所能获得的最大得分。「分割字符串的得分」为左子字符串中0的数量加上右子字符串中1的数量。 示例1:输入:s="011101"输出:5解释:将字符串s划分为两个非空子字符串的可行方案有:左子字符串="0"
JR_Chan
·
2020-08-18 10:33
LeetCode
LeetCode-
1. Two Sum - 思路详解-C++
题目Givenanarrayofintegers,returnindicesofthetwonumberssuchthattheyadduptoaspecifictarget.Youmayassumethateachinputwouldhaveexactlyonesolution.翻译给定义个数组,找到数组中的两个值之和为目标值,返回这两个数的下标,假设每一个数组都有一组特定的解。思路暴力法,两次
知无畏
·
2020-08-18 08:04
LeetCode
C++
数组
算法
LeetCode-
【数组】-跳跃问题
给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例1:输入:[2,3,1,1,4]输出:true解释:从位置0到1跳1步,然后跳3步到达最后一个位置。示例2:输入:[3,2,1,0,4]输出:false解释:无论怎样,你总会到达索引为3的位置。但该位置的最大跳跃长度是0,所以你永远不可能到达最后一个位置。分析:能
唐家威少
·
2020-08-18 07:59
LeetCode
贪心算法
Java
leetcode-
算法-14 Python
觉得不是很满意,可能是因为题目就这样,只能做一些修修补补的工作Python2.7classSolution(object):deflongestCommonPrefix(self,strs):""":typestrs:List[str]:rtype:str"""iflen(strs)==0:return""return_list=""min_len=min([len(x)forxinstrs])f
Evan_Tech
·
2020-08-18 06:52
leetcode
LeetCode-
面试题19.09.第k个数
题目:代码:(三指针法)classSolution{public:intgetKthMagicNumber(intk){if(k==1)return1;intans[k];ans[0]=1;intthree=0,five=0,seven=0;inta,b,c;for(inti=1;i
ilycorn
·
2020-08-18 05:18
leetcode-
最长公共前缀-python
classSolution:deflongestCommonPrefix(self,strs):""":typestrs:List[str]:rtype:str"""if(notstrs):return''l=list()i=0len1=len(strs[0])forsinstrs:if(len1>len(s)):len1=len(s)whilei<=len1-1:tmp=strs[0][i]fo
weixin_42456864
·
2020-08-18 05:58
leetcode-
生成括号(回溯算法)
转载出处:https://blog.csdn.net/yanerhao/article/details/68561290生成括号给出n代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出n=3,生成结果为:["((()))","(()())","(())()","()(())","()()()"]从题目寻找三要素:1选择:加左括号加右括号2条件左括号没有用完(
weixin_30780221
·
2020-08-18 04:49
数据结构基础
(21) --DFS与BFS
DFS从图中某个顶点V0出发,访问此顶点,然后依次从V0的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和V0有路径相通的顶点都被访问到(使用堆栈).//使用邻接矩阵存储的无向图的深度优先遍历templatevoidGraph::DFS(){stackiStack;showVertex(0);vertexList[0]->wasVisted=true;iStack.push(0);whi
weixin_30520015
·
2020-08-18 04:34
数据结构基础
5.3:平衡二叉树(AVL树)的调整
首先,先介绍一下平衡二叉树。平衡二叉树:空树,或者任一结点左右子树高度差的绝对值不超过1,即平衡因子|BF(T)|<=1。其结点数规律:设n(h)为高度为h的平衡二叉树的最小结点数,则n(h)=n(h-1)+n(h-2)+1。所以给定结点数n的AVL树的最大高度为log2(N)。然后,进入重点,介绍平衡二叉树的调整,一共分为4种情况:注:这里我们把插入的破坏二叉树平衡的结点叫做“破坏者”,把被破坏
SUKEPP
·
2020-08-18 03:10
Algorithm
【
LeetCode-
算法】55. 跳跃游戏(Java实现)
题目给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例1输入:[2,3,1,1,4]输出:true解释:从位置0到1跳1步,然后跳3步到达最后一个位置。示例2输入:[3,2,1,0,4]输出:false解释:无论怎样,你总会到达索引为3的位置。但该位置的最大跳跃长度是0,所以你永远不可能到达最后一个位置。实现代码
fan23_0708
·
2020-08-18 02:02
LeetCode
LeetCode-
最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入:["flower","flow","flight"]输出:"fl"示例2:输入:["dog","racecar","car"]输出:""解释:输入不存在公共前缀。classSolution{publicStringlongestCommonPrefix(String[]strs){Stringdefa
s695540301
·
2020-08-18 02:33
OJ练习
LeetCode
LeetCode-
获取所有钥匙的最短路径(BFS+状态压缩)
NCSTOJ-获取所有钥匙的最短路径LeetCode-864.获取所有钥匙的最短路径Description给定一个二维网格grid。“.”代表一个空房间,“#”代表一堵墙,“@”是起点,(“a”,“b”,…)代表钥匙,(“A”,“B”,…)代表锁。我们从起点开始出发,一次移动是指向四个基本方向之一行走一个单位空间。我们不能在网格外面行走,也无法穿过一堵墙。如果途经一个钥匙,我们就把它捡起来。除非我
ガッシュ·ベル
·
2020-08-18 01:19
Oj刷题
LeetCode-Python-143. 重排链表
1:给定链表1->2->3->4,重新排列为1->4->2->3.示例2:给定链表1->2->3->4->5,重新排列为1->5->2->4->3.来源:力扣(LeetCode)链接:https://
leetcode
暴躁老哥在线刷题
·
2020-08-18 00:00
Leetcode
Python
【
leetcode-
动态规划】 跳跃游戏
给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例1:输入:[2,3,1,1,4]输出:true解释:我们可以先跳1步,从位置0到达位置1,然后再从位置1跳3步到达最后一个位置。示例2:输入:[3,2,1,0,4]输出:false解释:无论怎样,你总会到达索引为3的位置。但该位置的最大跳跃长度是0,所以你永远不可
康斌825
·
2020-08-17 23:44
LeetCode
时间复杂度、空间复杂度、稳定性、
数据结构基础
概念
开启算法与数据结构学习之旅咯~时间复杂度与空间复杂度是算法的两大考量标准。稳定性也是算法的一个重要标准。时间复杂度:时间复杂度是对处理规模量为n的数据,执行算法所花的时间的度量。注:站在宏观上(以大时间单位)来讲,程序在计算机上执行的速度是非常快的,各种算法的执行消耗时间几乎一样,所以比较消耗了的时间也就失去了意义,所以时间复杂度也可以理解是:处理规模量为n的数据,算法执行核心代码(即:算法中执行
justry_deng
·
2020-08-17 23:38
数据结构与算法
LeetCode 70. 爬楼梯
1.1阶+1阶+1阶2.1阶+2阶3.2阶+1阶来源:力扣(LeetCode)链接:https://
leetcode-
HarvestWu
·
2020-08-17 20:39
LeetCode
python实现
leetcode-
第9题-回文数判断
classSolution:defisPalindrome(self,x):""":typex:int:rtype:bool"""ifx==0:returnTrueelse:strX=str(x)ifstrX[0]=='-':returnFalseelifstrX[-1]=='0':returnFalseelse:strX1=strX[::-1]ifstrX1!=strX:returnFalsee
Initial-T
·
2020-08-17 19:33
leetcode
数据结构基础
应试手册1.0
《数据结构期末基础应试手册》本手册(一座屎山)仅限用于个人应试author:kkzzjxdate:2020/7/3文章目录《数据结构期末基础应试手册》链表链表顺序表栈和队列串KMP算法树理论考试总结二叉树建立,遍历二叉搜索树哈夫曼树编码译码习题求哈夫曼树带权路径长度(利用了堆统计二叉树中的叶子结点数(树的顺序存储求二叉树高度图论理论考试总结建图:邻接矩阵&邻接表&DFS&BFS最小生成树PrimK
kkzzjx
·
2020-08-17 14:55
数据结构
XDOJ
leetcode-
旋转矩阵
题目来自LeetCode,链接:面试题01.07.旋转矩阵。具体描述为:给你一幅由N×N矩阵表示的图像,其中每个像素的大小为4字节。请你设计一种算法,将图像旋转90度。不占用额外内存空间能否做到?: 示例1:给定matrix=[[1,2,3],[4,5,6],[7,8,9]],原地旋转输入矩阵,使其变为:[[7,4,1],[8,5,2],[9,6,3]] 示例2:给定matrix=[[5,1,9
JR_Chan
·
2020-08-17 11:46
LeetCode
Leetcode-
数据结构-字符串
字符串操作练习字符串的常见操作基本操作以及正则表达式的表达。编程之美3.1给定两个字符串s1和s2,要求判定s2是否能够被s1做循环移位得到的字符串包含。s1进行循环移位的结果是s1s1的子字符串,因此只要判断s2是否是s1s1的子字符串即可。s1=AABCD,s2=CDAAReturn:true判断是否包含:indexOf(Strings)编程之美2.17将字符串向右循环移动k位。将abcd12
刚学会学习的平
·
2020-08-16 20:40
leetcode专题
网上最火的
LeetCode-
刷题计划
我的刷题计划参考:https://github.com/CyC2018/CS-Notes/blob/master/notes/Leetcode%20%E9%A2%98%E8%A7%A3%20-%20%E7%9B%AE%E5%BD%95.md类别分类题目名称难度算法相关双指针167.有序数组TwoSumE633.两数平方和E345.反转字符串中的元音字母E680.回文字符串E88.归并两个有序数组E
喜笑延开
·
2020-08-16 20:14
编程
数据结构基础
_并查集(UnionFind)
一.认识并查集可以高效的解决连接问题(ConnectivityProblem)检查网络中节点间的连接状态(网络是个抽象概念:用户之间形成的网络)数学中的集合类实现(合并问题)连接问题和路径问题:连接问题只需回答是或否,而路径问题要回答出具体的路径;对于一组数据,并查集主要支持三个动作:union(p,q)-----------------并操作,将元素p,q并入同一个组内find(p)------
Crownt
·
2020-08-16 19:48
数据结构
数据结构基础
总结(一) 队列,环形队列
(1)什么是队列队列就是一种数据结构,队列的最大特点为先进先出例如,在食堂买饭排队,先排队的人最先买到饭最先离开(2)数组模拟队列//数组模拟队列classArrToQueue{privateintMaxSize;//队列最大容量privateintfront;//队列头privateintrear;//队列尾privateint[]arr;//数组模拟队列publicArrToQueue(int
Liyuehahaha
·
2020-08-16 18:37
数据结构基础
总结(二)单链表
(1)链表的基本结构链表是以节点的方式存储的,每个节点含有data,以及下一个节点的地址next链表的各个节点不一定是连续存放的链表分为带头节点和不带头节点,根据需求决定(2)单向链表的增删改查//单向链表的增删改查classNode{publicintno;publicStringdata;publicNodenext;//构造器publicNode(intno,Stringdata){this
Liyuehahaha
·
2020-08-16 18:37
LeetCode-
探索-初级算法-其他-4. 帕斯卡三角形(个人做题记录,不是习题讲解)
LeetCode-
探索-初级算法-其他-4.帕斯卡三角形(个人做题记录,不是习题讲解)LeetCode探索-初级算法:https://leetcode-cn.com/explore/interview/
Ashiamd
·
2020-08-16 18:11
LeetCode
原创
非讲解
Java程序员校招面试——操作系统
然而很多大四学生要参加提前批的话需要有扎实的
数据结构基础
和刷算法题的能力之外,到了面试环节,面试官比较喜欢考察计算机网络和操作系统的原理,今天就让我来分享我当初校招遇到的常见操作系统的面试题。
god-jiang
·
2020-08-16 17:14
计算机基础
LeetCode-
滑动窗口的最大值
滑动窗口的最大值题目信息关键要知道双端队列(双向队列)的特性解题思路以及代码packagecom.cn.dl.leetcode.stack;importjava.util.Arrays;importjava.util.LinkedList;/***Createdbyyanshaoon2020-05-06.*/publicclassMaxSlidingWindow{publicint[]maxSli
燕少༒江湖
·
2020-08-16 14:45
leetcode系列
LeetCode-
最长上升子序列
给定一个无序的整数数组,找到其中最长上升子序列的长度。示例:输入:[10,9,2,5,3,7,101,18]输出:4解释:最长的上升子序列是[2,3,7,101],它的长度是4。说明:可能会有多种最长上升子序列的组合,你只需要输出对应的长度即可。你算法的时间复杂度应该为O(n2)。进阶:你能将算法的时间复杂度降低到O(nlogn)吗?//动态规划publicintlengthOfLIS(int[]
Sunny_Ran
·
2020-08-16 11:19
数据结构&算法
leetcode
LeetCode-
全排列
Givenacollectionofdistinctintegers,returnallpossiblepermutations.Example:Input:[1,2,3]Output:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]第一种我随手写的一个深度优先的算法publicList>permute(int[]nums){List>result
Sunny_Ran
·
2020-08-16 11:18
数据结构&算法
LeetCode-
跳跃游戏 III
这里有一个非负整数数组arr,你最开始位于该数组的起始下标start处。当你位于下标i处时,你可以跳到i+arr[i]或者i-arr[i]。请你判断自己是否能够跳到对应元素值为0的任意下标处。注意,不管是什么情况下,你都无法跳到数组之外。示例1:输入:arr=[4,2,3,0,3,1,2],start=5输出:true解释:到达值为0的下标3有以下可能方案:下标5->下标4->下标1->下标3下标
Sunny_Ran
·
2020-08-16 11:18
数据结构&算法
上一页
23
24
25
26
27
28
29
30
下一页
按字母分类:
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
其他