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-
二叉树遍历】二叉树的前序遍历/后序遍历/中序遍历/层序遍历/迭代器/ N 叉树的前序遍历/后序遍历
文章目录二叉树的前序遍历递归迭代Morris遍历二叉树的后序遍历递归迭代Morris遍历二叉树的中序遍历递归法迭代法二叉树的层序遍历广度优先搜索二叉树的锯齿层序遍历广度优先搜索二叉搜索树迭代器迭代递归扁平化N叉树的前序遍历递归迭代N叉树的后序遍历递归迭代二叉树的前序遍历给你二叉树的根节点root,返回它节点值的前序遍历。示例1:输入:root=[1,null,2,3]输出:[1,2,3]示例2:输
Hung武
·
2023-03-31 00:54
leetcode
Leetcode-
不同路径III
在二维网格grid上,有4种类型的方格:1表示起始方格。且只有一个起始方格。2表示结束方格,且只有一个结束方格。0表示我们可以走过的空方格。-1表示我们无法跨越的障碍。返回在四个方向(上、下、左、右)上行走时,从起始方格到结束方格的不同路径的数目。每一个无障碍方格都要通过一次,但是一条路径中不能重复通过同一个方格。示例1:输入:[[1,0,0,0],[0,0,0,0],[0,0,2,-1]]输出:
m0_66113251
·
2023-03-30 11:49
leetcode
算法
职场和发展
初级算法
之深度搜索
目录编辑概述:个人对深搜的理解:深搜模板:例题:题目描述输入格式输出格式输入输出样例说明/提示代码图示:概述:在我们刷算法的过程中肯定会想到暴力通过,暴力是不需要技巧的,在暴力算法中有一种枚举算法--深搜(深度搜索)dfs,其实在数据结构这门课程中我们是学过树的dfs深度优先算法的,但是我学的比较刻板,只能理解思想,代码也只能在树中能够实现,在算法题中很难想到怎么实现深搜。个人对深搜的理解:其实万
小唐同学(๑><๑)
·
2023-03-30 03:52
刷题专栏
数据结构
数据结构
深度优先
算法
Leetcode-
每日一题1250. 检查「好数组」(裴蜀定理)
题目链接:https://leetcode.cn/problems/check-if-it-is-a-good-array/description/思路方法:数论题目意思很简单,让你在数组nums中选取一些子集,可以不连续,子集中的每个数再乘以任意的数的和是否为1,是则原数组就是个「好数组」关键词:每个数相乘任意一个数相加,数论里「裴蜀定理」是一个关于最大公约数的定理。也是拥有类似的推导(具体证明
lin钟一
·
2023-03-30 01:35
leetcode算法实战
leetcode
算法
职场和发展
go
学习
Leetcode-
每日一题1234. 替换子串得到平衡字符串(滑动窗口 + 哈希表)
题目链接:https://leetcode.cn/problems/replace-the-substring-for-balanced-string/description/思路题目意思这题意思是一个只含有[Q,W,E,R]四个字符的字符串s且长度一定是4的倍数,需要你通过替换子串,使他变成一个「平衡字符串」,也就是字符串s内四个字符的数量都相等。首先要仔细审题,我刚开始是以为计算需要替换的字符
lin钟一
·
2023-03-30 01:05
leetcode算法实战
leetcode
散列表
算法
数据结构
go
LeetCode-
剑指offer-回溯算法-括号生成-专注技术的小飞
文章目录括号生成思路:上测试代码:喜欢编程的小伙伴可以直接拿去:括号生成数字n代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且有效的括号组合。示例:输入:n=3输出:[“((()))”,“(()())”,“(())()”,“()(())”,“()()()”]小编写文章之前还去看了看迭代和动态规划思路:1、二叉树的根节点放一个“(”,因为要有效,所以第一个不能是“)”2、依次在左右子
Malegod丶小飞
·
2023-03-29 14:25
#
回溯算法
二叉树
【数据结构】树的概念
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-03-29 08:40
数据结构
树
数据结构
算法
c语言
【模拟】特别数的和、移动距离、连号区间、错误票据思路详解及代码实现
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-03-29 08:40
#
模拟
年薪百万必看算法
算法
【动态规划】最长上升子序列(单调队列、贪心优化)
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-03-29 08:10
动态规划
算法
leetcode
贪心算法
蓝桥杯
【模拟】日期问题、回文日期思路详解及代码实现
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-03-29 08:10
#
模拟
年薪百万必看算法
数据结构
算法
c语言
蓝桥杯
【数论】最大公约数、约数的个数与约数之和定理
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-03-29 08:09
年薪百万必看算法
#
数论
算法
数据结构
c语言
【二分查找】分巧克力、机器人跳跃、数的范围
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。若每日一题当中有力所能及的题目,也会当天做完发出代码仓库:Gitee链接点击关注=收获更多优质内容开始准备蓝桥杯啦!
ppeua
·
2023-03-29 08:09
年薪百万必看算法
#
二分查找
蓝桥杯
算法
c语言
数据结构
【双指针问题】LeetCode344、345、 844、283问题详解及代码实现
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。若每日一题当中有力所能及的题目,也会当天做完发出代码仓库:Gitee链接点击关注=收获更多优质内容考试周终于结束啦,又要回归到日常来。
ppeua
·
2023-03-29 08:39
小菜鸡的LeetCode之路
#
双指针
年薪百万必看算法
leetcode
算法
c语言
双指针
ssh的使用
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-03-29 08:39
ssh
运维
服务器
【c语言技能树】函数的创建与销毁 --函数栈帧
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-03-29 07:49
C语言技能树
c语言
开发语言
数据结构
刷题记录(链表题为主)
输入:n=3输出:["((()))","(()())","(())()","()(())","()()()"]示例2:输入:n=1输出:["()"]来源:力扣(LeetCode)链接:https://
leetcode
锦绣拾年
·
2023-03-26 04:46
LeetCode-
算法(六)——递归+动态规划
LeetCode算法六第十一天-递归77.组合46.全排列784.字母大小写全排列第十二天-DP70.爬楼梯198.打家劫舍120.三角形最小路径第十一天-递归77.组合组合和排列是经典的递归回溯问题,并且可以利用剪枝的技巧对其进行优化。方法1:非剪枝的递归回溯方法组合不考虑顺序,从给定的N个数字中选定M个进行组合,输出组合的数字。1.组合需要选数,排列不需要2.那么可以考虑成当前位置的数选还是不
国家一级假勤奋大学生
·
2023-03-25 12:28
LeetCode题解
leetcode
算法
数据结构
递归和回溯
动态规划
LeetCode-
数据结构(二)
LeetCode-
数据结构二第三天-数组350-两个数组的交集II121-买卖股票的最佳时机第四天-数组566-重塑数组118-杨辉三角第三天-数组350-两个数组的交集II思路1:暴力解法,利用二重循环
国家一级假勤奋大学生
·
2023-03-25 12:28
LeetCode题解
leetcode
数据结构
算法
LeetCode-
算法(一)
LeetCode-
算法一第一天-二分查找704-二分查找278-第一个错误版本35-搜索插入位置第二天-双指针977-有序数组的平方189-轮转数组第一天-二分查找704-二分查找经典的二分查找代码应该熟练掌握
国家一级假勤奋大学生
·
2023-03-25 12:28
LeetCode题解
leetcode
算法
排序算法
LeetCode-
子数组-子字符串(也就是连续的序列)
1解题思路子数组以及子字符串(子串)就是连续的序列。既然是连续,常使用到的方法就是使用滑动窗口,滑动窗口的滑动条件就是题目的要求,滑动条件可以借助有序的set、multiset或者无序的unordered_set等来实现。对于子串的最值问题的求解常常会使用动态规划的思想,找出状态转移方程是关键。滑动窗口参考链接:CSDN对比子序列的题目:CSDN2子数组题目2.1最大连续1的个数1004.最大连续
hclbeloved
·
2023-03-23 19:10
#
leetcode
LeetCode-
翻转字符串里的单词
给定一个字符串,逐个翻转字符串中的每个单词。快速浏览:空白输入特殊情况常见类库输入:"helloworld!"输出:"world!hello"importjava.util.ArrayList;classSolution{publicStringreverseWords(Strings){if(s==null||s.length()==0)return"";ArrayListarr=newArra
步芦
·
2023-03-20 05:49
初级算法
-动态规划-爬楼梯
假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定n是一个正整数。摘一个示例做个说明.示例1:输入:2输出:2解释:有两种方法可以爬到楼顶。1.1阶+1阶2.2阶条件分析:总共n阶,每次只能走一阶或者两阶解决思路1:根据分析1,走台阶可以从第一步开始,当n为1时,上一步.n为2的时候上两步或者一步.做个列举n为1,结果为1(1)n为2
coenen
·
2023-03-13 17:38
【Django】Hello,DJango!
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-03-13 11:15
Django
django
python
后端
服务器
前端
LeetCode-
三角形的最小路径和(动态规划)
题目链接=>戳这里题目截图题目解析这道题其实有一点是需要另外拿出来讲的,对比跑楼梯,跑楼梯的最后状态求解,我们是很明确要求解的节点的,但是这道题,如果我们自顶向下求解的话,我们会发现我们并不是很明确究竟最后要返回dp[i][j]中的哪个节点,当然也可以做到,因为我们知道最后的解一定是在最后一行中的某个数,所以我们只需要对最后一行的dp值进行排序,然后返回最小的值即可。但是我们自底向上的话,最终的求
沙漠小舟
·
2023-03-12 05:24
Leetcode-
二叉树的最近公共祖先
给定一个二叉树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树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,0,8,null,null,7,4],
风暴小狼
·
2023-03-11 13:53
leetcode-
第168场周赛题目-你能从盒子里获得的最大糖果数
给你n个盒子,每个盒子的格式为[status,candies,keys,containedBoxes],其中:状态字status[i]:整数,如果box[i]是开的,那么是1,否则是0。糖果数candies[i]:整数,表示box[i]中糖果的数目。钥匙keys[i]:数组,表示你打开box[i]后,可以得到一些盒子的钥匙,每个元素分别为该钥匙对应盒子的下标。内含的盒子containedBoxes
8239e604d437
·
2023-03-10 07:35
leetcode-
每日一题2022.3.17 词典中最长的单词
题目力扣思路模拟先把words中的字符串放到哈希表里,再遍历words的每一个字符串,判断它从0开始的每一个子串是否存在于哈希表里。代码classSolution{public:stringlongestWord(vector&words){intans=-1;unordered_setset;for(stringword:words)set.insert(word);for(inti=0;iwo
还记得樱花正开~
·
2023-02-23 12:14
leetcode
leetcode
算法
职场和发展
Leetcode 每日一题 2341. 数组能形成多少数对
LeetCode专栏:专栏链接目前在刷
初级算法
的LeetBook。
ppeua
·
2023-02-22 02:35
小菜鸡的LeetCode之路
leetcode
算法
职场和发展
LeetCode-
题目详解(十):递归【深度优先遍历(DFS;前序遍历、中序遍历、后序遍历)】【岛屿问题、水域问题、单词搜索问题】、【广度优先遍历(BFS;借助queue结构)】
对于递归要分清以下概念:自己调用自己递归通常不在意具体操作,只关心初始条件和上下层的变化关系。递归函数需要有临界停止点,即递归不能无限制的执行下去。通常这个点为必须经过的一个数。递归通常能被其他方案替代(栈、数组正向求)。递归一、网格矩阵搜索问题(岛屿问题)1、网格类问题的DFS遍历方法1.1网格问题的基本概念1.2DFS的基本结构1.3如何避免重复遍历200.岛屿数量方法一:深度优先遍历DFS4
u013250861
·
2023-02-17 07:00
LeetCode
递归
JavaScript常见
初级算法
总结-ES5
ProfileLookup函数将会检查通讯录中是否存在一个与传入的firstName相同的联系人。如果存在,那么还需要检查对应的联系人中是否存在prop属性。functionlookUp(firstName,prop,contacts){vartemp=contacts.filter(function(item){returnitem.firstName==firstName;});if(temp
Taotao_Xu
·
2023-02-04 23:21
【Leetcode
初级算法
】4-存在重复
给定一个整数数组,判断是否存在重复元素。如果任何值在数组中出现至少两次,函数返回true。如果数组中每个元素都不相同,则返回false。示例1:输入:[1,2,3,1]输出:true示例2:输入:[1,2,3,4]输出:false思路:最简单的想法,第一个与后面所有其他元素比较是否相等,没有的话第二个,第三个……暴力破解法。这样循环嵌套两次就做出来了,但是时间复杂度就到了O(n*n),一提交第5个
小流
·
2023-02-01 06:57
LeetCode-
每日一题:字符串变换的最小次数
854.相似度为K的字符串对于某些非负整数k,如果交换s1中两个字母的位置恰好k次,能够使结果字符串等于s2,则认为字符串s1和s2的相似度为k。给你两个字母异位词s1和s2,返回s1和s2的相似度k的最小值。输入:s1="ab",s2="ba"输出:1广度优先搜索classSolution:defkSimilarity(self,s1:str,s2:str)->int:#题意为从s1变换为s2,
ShowMeCoding
·
2023-02-01 04:13
【Golang】
LeetCode-
剑指Offer-面试题38-字符串的排列
题目输入一个字符串,打印出该字符串中字符的所有排列。你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。示例:输入:s=“abc”输出:[“abc”,“acb”,“bac”,“bca”,“cab”,“cba”]限制:1<=s的长度<=8来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/zi-fu-chuan-de-pai-lie-lcof解
士多啤梨先生
·
2023-01-31 22:38
LeetCode力扣个人题解
剪枝
leetcode
算法
字符串
golang
【
LeetCode-
剑指Offer】38. 字符串的排列
一、题目输入一个字符串,打印出该字符串中字符的所有排列。你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。示例:输入:s="abc"输出:["abc","acb","bac","bca","cab","cba"]限制:1dfs(Noderoot,intcurLayer,Listresult){//终止条件if(root==null||curlayer>n)returnresult;//数据
白露塞纳
·
2023-01-31 22:37
dfs
LeetCode-
剑指 Offer 38. 字符串的排列
LeetCode-
剑指Offer38.字符串的排列输入一个字符串,打印出该字符串中字符的所有排列。你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。
ITAK_fans
·
2023-01-31 22:07
剑指offer
剪枝
字符串
leetcode
leetcode-
四数之和
原理和三数之和相同,但多了一层循环,复杂度为O(n^3)。#include#include#include#includeusingnamespacestd;vector>fourSum(vector&nums,inttarget){sort(nums.begin(),nums.end());vector>res;intsize=nums.size();for(inti=0;i0&&nums[i]
weilu56
·
2023-01-30 12:19
LeetCode-
算法
文章目录4.xtrick/分析困难的题目汇总4.4位运算常见的位运算布赖恩·克尼根算法/popcount/汉明权重lowbit算法位运算进行整数加法格雷码位运算相关题目4.5排序选择排序(简单选择、堆)插入排序(直接插入、折半、希尔)交换排序(冒泡排序、快速排序)归并排序(二路归并)几种排序算法的对比(待完成)排序相关题目4.6查找二分查找基本思路框架搜索左边界的二分法(target重复时)搜索右
Icgcdz
·
2023-01-28 10:21
数据结构与算法
算法
leetcode
Java中异或(^)的应用
今天在LeetCode上写算法时遇到的,了解了一下异或:满足交换律任何数与0异或都为其本身两个相同数字异或等于零经典例题:LeetCode->探索->
初级算法
->数组->只出现一次的数字
PaulPaul_Zhang
·
2023-01-28 01:13
LeetCode-
子数组的最小值之和
给定一个整数数组arr,找到min(b)的总和,其中b的范围为arr的每个(连续)子数组。由于答案可能很大,因此返回答案模10^9+7。实例1输入:arr=[3,1,2,4]输出:17解释:子数组为[3],[1],[2],[4],[3,1],[1,2],[2,4],[3,1,2],[1,2,4],[3,1,2,4]。最小值为3,1,2,4,1,1,2,1,1,1,和为17。示例2输入:arr=[1
HuyCui
·
2023-01-19 21:38
LeetCode
leetcode
算法
职场和发展
LeetCode-
只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。你可以不使用额外空间来实现吗?输入:[2,2,1]输出:1输入:[4,1,2,1,2]输出:4本题如果采用常规的方法做是比较简单的,比如可以遍历一遍数组,将数据保存到hashmap中,记录每个数据出现的次数,采用这种方法的时间复杂度和空间复杂度都为O(n)。p
HuyCui
·
2023-01-19 21:38
LeetCode
leetcode
算法
数据结构
LeetCode-
两数之和
给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例1:输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。示例2:输入:num
HuyCui
·
2023-01-19 21:08
LeetCode
leetcode
算法
java
java数据结构(一)单链表(3)环形链表
六.利用递归方法判断环形链表力扣
初级算法
题目:判断一个不含首结点的单链表中是否有环。思路分析:因为是单链表,这里的环只能出现在最后一个结点。
天津泰达康师傅
·
2023-01-17 16:22
链表
数据结构
java
初级算法
之树
树比链表稍微复杂,因为链表是线性数据结构,而树不是。树的问题可以由广度优先搜索或深度优先搜索解决。在本章节中,我们提供了一个对于练习广度优先遍历很好的题目。我们推荐以下题目:二叉树的最大深度,验证二叉搜索树,二叉树的层次遍历和将有序数组转换为二叉搜索树。剑指Offer55-I.二叉树的深度输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径
林寻星辰
·
2023-01-10 21:40
数据结构和算法
算法
链表
leetcode
LC
初级算法
:验证回文串-Python
如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个回文串。字母和数字都属于字母数字字符。给你一个字符串s,如果它是回文串,返回true;否则,返回false。示例1:输入:s="Aman,aplan,acanal:Panama"输出:true解释:"amanaplanacanalpanama"是回文串。示例2:输入:s="raceac
百分之七.
·
2023-01-09 10:35
Python算法
python
算法
leetcode
LC
初级算法
:旋转图像-Python
给定一个n×n的二维矩阵matrix表示一个图像。请你将图像顺时针旋转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,11],[2,4,8,10],[13,3,6,7],
百分之七.
·
2023-01-09 10:34
Python算法
算法
数据结构
leetcode
纯C手撕
leetcode-
基本数据结构-二叉堆
二叉堆基本操作使用数组A[1...n],可近视看作一个完全二叉树。树中每个node对应数组的一个元素树的每一层(除了最后一层尽可能)都从左到右依次填满;image.png每个节点的父子节点的索引/**数组从索引从1开始*/PARENT(i)returni/2;LEFT(i)return2i;RIGHT(i)return2i+1;/**数组从索引从0开始*/PARENT(i)return(i-1)/
1哥
·
2023-01-09 00:33
爬楼梯(递归、动态规划、矩阵)
LeetCode-
爬楼梯目录
LeetCode-
爬楼梯做法一:递归做法二:动态规划做法三:通项公式矩阵形式做法一:递归//leetcode爬楼梯//做法一:递归分析可知,答案满足斐波那契数列的规律intsolution
yonuyeung
·
2023-01-07 18:39
总结
动态规划
算法
c语言
JavaScript刷
LeetCode-
字符串类解题技巧
序章我们把字符串、数组、正则、排序、递归归为简单算法。接下来系列里,将系列文章里将为大家逐一介绍。字符串翻转字符串中的单词给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例1:输入:"Let'stakeLeetCodecontest"输出:"s'teLekatedoCteeLtsetnoc"注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外
·
2023-01-06 08:16
Leetcode-
第782题-困难-《变为棋盘》
题目题目链接一个n×nn\timesnn×n的二维网络boardboardboard仅由000和111组成。每次移动,你能任意交换两列或是两行的位置。返回将这个矩阵变为“棋盘”所需的最小移动次数。如果不存在可行的变换,输出-1。示例1:输入:board=[[0,1,1,0],[0,1,1,0],[1,0,0,1],[1,0,0,1]]输出:2解释:一种可行的变换方式如下,从左到右:第一次移动交换了
快乐活在当下
·
2023-01-03 20:05
leetcode刷题
leetcode
算法
职场和发展
初级算法
之字符串
344.反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。思路一:从中间开始向两边遍历,然后两边交换位置,最终获得字符串的反转//classSolution{publicvoidreverseString(char[]s){intlen=s.length,size=len;for(inti=0;ilength)?length:start+k;intsecon
林寻星辰
·
2022-12-14 15:07
数据结构和算法
java
上一页
13
14
15
16
17
18
19
20
下一页
按字母分类:
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
其他