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
力扣二叉树
代码训练营 Day16| 513.找左下角的值 | 112.路径总和 | 106.从中序后序遍历构造
二叉树
513.找左下角的值1.这题使用层序遍历会比递归要简单很多2.因为是要找左下角的值1.层序遍历是使用队列来分别辨别不同层的元素有那些2.最左边的值永远是第一个进入队列的,所以在while的内层循环设置一个判断条件即可获得该值importcollections#Definitionforabinarytreenode.#classTreeNode(object):#def__init__(self,
RatherDoMyMath_
·
2024-08-29 13:38
算法
python
数据结构
代码随想录 -- 哈希表 -- 四数之和
18.四数之和-
力扣
(LeetCode)思路:(与三数之和类似,在外面加一层循环)1.先将nums按升序排序2.初始状态:k=0,i=k+1,left=i+1,right=len(nums)-13.进入第一层
可别是个可爱鬼
·
2024-08-29 12:58
代码随想录
散列表
数据结构
算法
leetcode
python
代码随想录算法训练营第三十七天| LeetCode738.单调递增的数字
LeetCode738单调递增的数字题目链接:738.单调递增的数字-
力扣
(LeetCode)【解题思路】需要采用从后往前的遍历如果发现该数字的前一位比后一位大,那么前一位就做-1处理,后一位变为9注意
小救星小然
·
2024-08-29 08:37
算法
监控
二叉树
[LeetCode]56.合并区间[LeetCode]56.合并区间文章解释[LeetCode]56.合并区间视频解释题目:以数组intervals表示若干个区间的集合,其中单个区间为intervals[i]=[starti,endi]。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。示例1:输入:intervals=[[1,3],[2,6],[8,10],[
dreamtang
·
2024-08-29 08:36
LeetCode
算法学习
算法
代码随想录训练营第37天 | LeetCode 738.单调递增的数字、LeetCode 968.监控
二叉树
、
LeetCode:738.单调自增的数字_哔哩哔哩_bilibili思路LeetCode968.监控
二叉树
文章讲解:代码随想录(programmercarl.com)视频讲解:贪心算法,
二叉树
与贪心的结合
A_2847443402
·
2024-08-29 08:35
leetcode
算法
职场和发展
排序算法之堆排序详细解读(附带Java代码解读)
堆是一种特殊的完全
二叉树
,堆排序的基本思想是将数组构建成一个最大堆(或最小堆),然后通过交换根节点和堆的最后一个元素,将最大(或最小)元素移到数组的末尾。
南城花随雪。
·
2024-08-29 05:11
算法分析
排序算法
java
算法
力扣
刷题day3
8.27刷题第三天141.环形链表/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode(intx):val(x),next(NULL){}*};*/classSolution{public:boolhasCycle(ListNode*head){unordered_setseen;//
CHAO_bismarck
·
2024-08-29 02:18
刷题
leetcode
链表
数据结构
力扣
698. 划分为k个相等的子集
给定一个整数数组nums和一个正整数k,找出是否有可能把这个数组分成k个非空子集,其总和都相等。示例1:输入:nums=[4,3,2,3,5,2,1],k=4输出:True说明:有可能将其分成4个子集(5),(1,4),(2,3),(2,3)等于总和。提示:1nums.length)returnfalse;intsum=0;for(intv:nums)sum+=v;if(sum%k!=0)retu
Vinarun
·
2024-08-29 01:16
leetcode
leetcode
算法
07堆排序
堆积是一个近似完全
二叉树
的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序可以说是一种利用堆的概念来排序的选择排序。
BubbleM
·
2024-08-29 00:47
算法day14|110.平衡
二叉树
(优先掌握递归)、
二叉树
的所有路径(优先掌握递归)、404.左叶子之和 (优先掌握递归)、222.完全
二叉树
的节点个数(优先掌握递归)
算法day14|110.平衡
二叉树
(优先掌握递归)、
二叉树
的所有路径(优先掌握递归)、404.左叶子之和(优先掌握递归)、222.完全
二叉树
的节点个数(优先掌握递归)110.平衡
二叉树
(优先掌握递归)257
桃酥403
·
2024-08-28 21:50
算法
数据结构
c++
leetcode
力扣
229题详解:求众数 II 的多种解法与模拟面试问答
在本篇文章中,我们将详细解读
力扣
第229题“求众数II”。通过学习本篇文章,读者将掌握如何识别数组中出现次数超过n/3的元素,并了解相关的复杂度分析和模拟面试问答。
数据分析螺丝钉
·
2024-08-28 17:20
LeetCode刷题与模拟面试
leetcode
面试
算法
经验分享
python
力扣
230题详解:二叉搜索树中第K小的元素的多种解法与模拟面试问答
在本篇文章中,我们将详细解读
力扣
第230题“二叉搜索树中第K小的元素”。通过学习本篇文章,读者将掌握如何在二叉搜索树中高效地查找第K小的元素,并了解相关的复杂度分析和模拟面试问答。
数据分析螺丝钉
·
2024-08-28 17:20
LeetCode刷题与模拟面试
leetcode
面试
算法
经验分享
python
力扣
227题详解:基本计算器 II 的多种解法与模拟面试问答
在本篇文章中,我们将详细解读
力扣
第227题“基本计算器II”。通过学习本篇文章,读者将掌握如何使用多种方法来解析和计算字符串表达式的值,并了解相关的复杂度分析和模拟面试问答。
数据分析螺丝钉
·
2024-08-28 17:19
leetcode
算法
面试
python
经验分享
力扣
228题详解:汇总区间的多种解法与模拟面试问答
在本篇文章中,我们将详细解读
力扣
第228题“汇总区间”。通过学习本篇文章,读者将掌握如何识别并汇总连续区间,并了解相关的复杂度分析和模拟面试问答。每种方法都将配以详细的解释,以便于理解。
数据分析螺丝钉
·
2024-08-28 17:18
LeetCode刷题与模拟面试
leetcode
算法
面试
python
经验分享
代码随想录算法训练营第18天 | 第六章
二叉树
part08
第六章
二叉树
-Part08目录669.修剪二叉搜索树108.将有序数组转换为二叉搜索树538.把二叉搜索树转换为累加树总结篇669.修剪二叉搜索树这道题目比较难,比添加、增加和删除节点难得多,建议先看视频理解
tt555555555555
·
2024-08-28 17:48
C++学习
学习笔记
算法
leetcode
笔记
学习
c++
数据结构
JavaScript 数据结构 ====
二叉树
目录
二叉树
结构
二叉树
和二叉搜索树介绍1.创建树2.插入一个键3.树的遍历中序排序先序遍历后序遍历4.搜索树中的值5.删除节点
二叉树
在计算机科学中,
二叉树
是每个结点最多有两个子树的树结构。
前端 贾公子
·
2024-08-28 17:44
数据结构
二叉树
的所有路径
目录一:题目:二:代码:三:结果:一:题目:给你一个
二叉树
的根节点root,按任意顺序,返回所有从根节点到叶子节点的路径。叶子节点是指没有子节点的节点。
杰克尼
·
2024-08-28 17:14
LeetCode
算法
[leetcode刷题]
力扣
刷题4之整数转罗马数字(中等)
-
力扣
(LeetCode).-备战技术面
孙小二写代码
·
2024-08-28 16:38
leetcode
算法
贪心算法
哈希表
【PythonCode】
力扣
Leetcode1~5题Python版
【PythonCode】
力扣
Leetcode1~5题Python版前言
力扣
Leetcode是一个集学习、刷题、竞赛等功能于一体的编程学习平台,很多计算机相关专业的学生、编程自学者、IT从业者在上面学习和刷题
小斌哥ge
·
2024-08-28 14:29
Python
Code/Python面试题
leetcode
python
算法
力扣Python
力扣
【高阶数据结构】——并查集:高效地管理集合
前言:前面我们已经学习了简单的数据结构,包括栈与队列、
二叉树
、红黑树等等,今天我们继续数据结构的学习,但是难度上会逐渐增大,在高阶数据结构中我们要学习的重点是图等目录并查集的原理并查集的基本操作实现方式
GG Bond.ฺ
·
2024-08-28 13:23
数据结构
算法
学习
c++
划分为k个相等的子集
作者主页:慢热的陕西人专栏链接:
力扣
刷题日记欢迎各位大佬点赞关注收藏,留言文章目录划分为k个相等的子集题目链接方法一:状态压缩+记忆化搜索思路代码复杂度分析划分为k个相等的子集题目链接698.划分为k个相等的子集
SummerM.
·
2024-08-28 09:30
刷题日记
深度优先
算法
力扣
1074.元素和为目标值的子矩阵数量
力扣
1074.元素和为目标值的子矩阵数量前缀和+哈希表见
力扣
363.枚举上下边界转化一维前缀和,用哈希表储存出现次数classSolution{public:intnumSubmatrixSumTarget
阳光男孩01
·
2024-08-28 09:27
leetcode
矩阵
算法
【408DS算法题】026基础-
二叉树
的先序、中序、后序遍历
Index题目分析实现总结题目给定
二叉树
的根节点root,分别写出递归函数实现对
二叉树
的先序遍历、中序遍历和后序遍历。分析实现
二叉树
的先序、中序、后序遍历是非常常见的对
二叉树
进行深度优先搜索的算法。
LIC_woodBird
·
2024-08-28 08:25
算法
链表
数据结构
力扣
HOT100 - 46. 全排列
解题思路:回溯假设给定数组nums为[1,2,3],首先将其转换为List类型的output为[1,2,3]。在backtrack方法中,初始时first为0,所以进入第一个for循环,交换output中第一个元素和自身,然后递归调用backtrack方法,此时first为1,再次进入for循环,交换output中第二个元素(即2)和自身。这样得到的output为[1,2,3],添加到结果集中。接
_OLi_
·
2024-08-28 06:39
力扣HOT100
算法题合集
leetcode
算法
java
力扣
第71题:简化路径 放弃栈模拟,选择数据流√(C++)
目录题目思路解题过程复杂度Code题目给你一个字符串path,表示指向某一文件或目录的Unix风格绝对路径(以'/'开头),请你将其转化为更加简洁的规范路径。在Unix风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点(..)表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。任意多个连续的斜杠(即,'//')都被视为单个斜杠'/'。对于此问题,任何其他格式的点(例
Daking-
·
2024-08-28 05:31
leetCode耐刷王
c++
开发语言
存在重复元素 II【
力扣
(LeetCode) 】
一、题目描述给你一个整数数组nums和一个整数k,判断数组中是否存在两个不同的索引i和j,满足nums[i]==nums[j]且abs(i-j)&nums,intk){intn=nums.size();mapm;for(inti=0;i
理论最高的吻
·
2024-08-28 04:25
leetcode
算法
数据结构
C++
散列表
职场和发展
力扣
热题100_动态规划_198_打家劫舍
文章目录题目链接解题思路解题代码题目链接198.打家劫舍你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你不触动警报装置的情况下,一夜之内能够偷窃到的最高金额。示例1:输入:[1,2,3,1]输出:4解释:偷窃1号房
you_are_my_sunshine*
·
2024-08-28 04:22
力扣
leetcode
动态规划
算法
数据结构
力扣
热题100_动态规划_70_爬楼梯
文章目录题目链接解题思路解题代码题目链接70.爬楼梯假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?示例1:输入:n=2输出:2解释:有两种方法可以爬到楼顶。1阶+1阶2阶示例2:输入:n=3输出:3解释:有三种方法可以爬到楼顶。1阶+1阶+1阶1阶+2阶2阶+1阶解题思路#思路:动态规划#1.划分阶段#按照台阶的层数进行划分为0~n。#2.
you_are_my_sunshine*
·
2024-08-28 02:12
力扣
leetcode
动态规划
数据结构
力扣
刷题-合并区间有感
合并区间链接暴力法失败了,其实很好模拟,唯一的问题就是interval很难有序,结果答案告诉我可以直接sort。。。代码:classSolution{public:vector>merge(vector>&intervals){//如果输入的区间列表为空,直接返回空列表if(intervals.size()==0){return{};}//首先将所有区间按照左边界进行排序,以便后续合并sort(i
Beiwen_
·
2024-08-28 00:57
本科学习
c语言
leetcode
算法
职场和发展
c++
力扣
222题详解:完全
二叉树
的节点个数的多种解法与模拟面试
在本篇文章中,我们将详细解读
力扣
第222题“完全
二叉树
的节点个数”。通过学习本篇文章,读者将掌握如何使用多种方法来解决这一问题,并了解相关的复杂度分析和模拟面试问答。
数据分析螺丝钉
·
2024-08-28 00:26
LeetCode刷题与模拟面试
leetcode
算法
面试
python
经验分享
【
力扣
】3266.K次乘运算后的最终数组Ⅱ
题目描述给你一个整数数组nums,一个整数k和一个整数multiplier。你需要对nums执行k次操作,每次操作中:找到nums中的最小值x,如果存在多个最小值,选择最前面的一个。将x替换为x*multiplier。k次操作以后,你需要将nums中每一个数值对109+7取余。请你返回执行完k次乘运算以及取余运算之后,最终的nums数组。示例1:输入:nums=[2,1,3,5,6],k=5,mu
孤往良辰6575
·
2024-08-28 00:56
力扣
leetcode
算法
数据结构
c++
c语言
算法分析之
二叉树
背包动态规划之背包问题——完全背包动态规划之打家劫舍系列问题动态规划之股票买卖系列问题动态规划之子序列问题算法(Java)——动态规划2数组算法分析之数组问题3链表算法分析之链表问题算法(Java)——链表4
二叉树
算法分析之
二叉树
算法分析之
二叉树
遍历算法分析之
二叉树
常见问题算法
小朱小朱绝不服输
·
2024-08-27 22:45
算法分析
算法
数据结构
二叉树
Java
表达式求值相关算法
'+','2','*','(','3','+','4',')']转逆波兰表达式:将中缀表达式转后缀表达式,['1','2','3','4','+','*','+']逆波兰表达式求值:15逆波兰表达式转
二叉树
hatlonely
·
2024-08-27 13:37
力扣
热题100_贪心算法_45_跳跃游戏
文章目录题目链接解题思路解题代码题目链接45.跳跃游戏II给定一个长度为n的0索引整数数组nums。初始位置为nums[0]。每个元素nums[i]表示从索引i向前跳转的最大长度。换句话说,如果你在nums[i]处,你可以跳转到任意nums[i+j]处:0=i的第一个j,使得dp[i]=dp[j]+1。#而查找第一个j的过程可以通过使用一个指针变量j从前向后迭代查找。#最后,将最终结果dp[siz
you_are_my_sunshine*
·
2024-08-27 13:50
力扣
leetcode
贪心算法
数据结构
秋招
力扣
Hot100刷题总结——堆
1.数组中的第K个最大元素题目链接题目要求:给定整数数组nums和整数k,请返回数组中第k个最大的元素。请注意,你需要找的是数组排序后的第k个最大的元素,而不是第k个不同的元素。你必须设计并实现时间复杂度为O(n)的算法解决此问题。代码及思路使用小根堆来解决,遍历数组,将元素放入堆中当堆的大小大于k时,将堆顶元素弹出最终堆中元素是数组中最大的k个元素,且堆顶是其中最小的代码classSolutio
番茄炒西红柿炒蛋
·
2024-08-27 13:15
秋招Java后端
力扣刷题
leetcode
算法
java
DFS实战
若是从一
二叉树
树考虑,DFS就是先一路搜索到最左侧,然后逐渐返回上一节点,再搜索上一节点的子节点。有栈的思想。所以一般都会用递归的方式解决问题。不同于BFS每次只找一层,先进先出的对列。
小碧小琳
·
2024-08-27 12:24
单调栈 LeetCode 1130. 叶值的最小代价生成树
目录一、题目1、题目描述2、输入输出2.1输入2.2输出3、原题链接二、解题报告1、思路分析2、复杂度3、代码详解一、题目1、题目描述给你一个正整数数组arr,考虑所有满足以下条件的
二叉树
:每个节点都有
EQUINOX1
·
2024-08-27 11:35
OJ刷题解题报告
leetcode
算法
动态规划
二叉树
---二叉搜索树中的众数
题目:给你一个含重复值的二叉搜索树(BST)的根节点root,找出并返回BST中的所有众数(即,出现频率最高的元素)。如果树中有不止一个众数,可以按任意顺序返回。假定BST满足如下定义:结点左子树中所含节点的值小于等于当前节点的值结点右子树中所含节点的值大于等于当前节点的值左子树和右子树都是二叉搜索树思路:中序遍历二叉搜索树可以得到递增序列。用pre存储前一个便利的节点,root为现在访问的节点,
小鱼在乎
·
2024-08-27 07:37
数据结构与算法
算法
数据结构
JS数据结构之
二叉树
的基础知识
二叉树
的基础知识一、树的基础知识1.树的定义:2.通俗的定义:3.树的一些名词:4、树的一些特点二、
二叉树
1、
二叉树
的定义2、
二叉树
的性质3、满
二叉树
4、完全
二叉树
一、树的基础知识1.树的定义:(1)有且只有一个称为根的节点
hysteria、
·
2024-08-26 23:23
JS数据结构
数据结构
javascript
html
html5
浅谈数据结构---红黑树、
二叉树
红黑树简介红黑树:在本质上还是
二叉树
,是一种高效的查找树。特点一边的数比另一边的数高太多时,自动旋转平衡当数据量比较大时,层级比较多,查询效率低如下图所示:如果一边的数比另一边高太多时,会进行折叠。
夏小花花
·
2024-08-26 13:03
mysql
数据结构
java
mysql
浅谈数据结构之树(一)
浅谈数据结构之树(一)基本概念
二叉树
斜树满
二叉树
完全
二叉树
平衡
二叉树
红黑树B+树基本概念链表、栈和队列都是一对一的线性结构,树是一对多的线性结构。
24K不怕
·
2024-08-26 12:30
数据结构
树
二叉树
数据结构
算法
AVL平衡
二叉树
AVL平衡
二叉树
定义平衡因子调整类型右右型左左型右左型左右型代码定义单个节点是AVL树左右子树高差差不大于1左右子树都是AVL树平衡因子左子树高度减去右子树高度如果平衡因子绝对值超过1,就必须调整。
qq_187352634
·
2024-08-26 05:49
C++
算法
数据结构
平衡二叉树
从上到下打印
二叉树
comments:truedifficulty:中等edit_url:https://github.com/doocs/leetcode/edit/main/lcof/%E9%9D%A2%E8%AF%95%E9%A2%9832%20-%20I.%20%E4%BB%8E%E4%B8%8A%E5%88%B0%E4%B8%8B%E6%89%93%E5%8D%B0%E4%BA%8C%E5%8F%89%E6
常某某的好奇心
·
2024-08-26 03:36
算法
从上到下打印
二叉树
III」
「剑指Offer32-III.从上到下打印
二叉树
III」题目描述(level中等)请实现一个函数按照之字形顺序打印
二叉树
,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印
快乐二狗呀
·
2024-08-26 03:05
算法
信息学奥赛知识点(十三)----树和
二叉树
(上)
树是一种非线性结构,栈和队列都是线性结构(线性一般是指每一个元素都通常只有一个前驱和一个后继)一、树的定义一棵树是由n(n>0)个元素组成的有限集合,其中:(1)每个元素称为结点(node)(2)有一个特定的结点,称为根结点或树根(root)(3)除根结点外,其余结点能分成m(m>=0)个互不相交的有限集合T0,T1,T2……Tm-1。其中的每个子集又都是一棵树,这些集合称为这颗树的子树。三、树的
黑色火種
·
2024-08-26 03:29
信息学奥赛
数据结构
算法
数据结构: 用队列实现栈(
力扣
225)
请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop和empty)。实现MyStack类:voidpush(intx)将元素x压入栈顶。intpop()移除并返回栈顶元素。inttop()返回栈顶元素。booleanempty()如果栈是空的,返回true;否则,返回false。注意:你只能使用队列的标准操作——也就是pushtoback、pee
LG.YDX
·
2024-08-26 00:18
数据结构
leetcode
java
图与树的基本概念
目录引言图与树结构的重要性图的基本概念图的表示方式图的遍历算法树的基本概念树的定义与性质树的遍历
二叉树
与多叉树的概念图与树的高级应用最短路径算法最小生成树算法总结与应用综合实例分析引言在计算机科学的世界中
小魏冬琅
·
2024-08-26 00:47
其他
算法
二叉树
的深度
//面试题55-I.
二叉树
的深度//输入一棵
二叉树
的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。
qianzi_wei
·
2024-08-26 00:46
leetcode
算法
leetcode
二叉树
力扣
热题100 - 链表:两数相加
本题也是主要考察编码能力,大家加油!题目描述:题号:2给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字0之外,这两个数都不会以0开头。解题思路:思路一:两链表数值以及进位的数字相加新链表的值为链表1的值+链表2的值+进位值的加和除以10,最后如果有进位还有将其追加在新链
菲英的学习笔记
·
2024-08-25 23:39
力扣热题100
leetcode
链表
算法
c++
go
数据结构
【数据结构-前缀异或和】
力扣
1177. 构建回文串检测
给你一个字符串s,请你对s的子串进行检测。每次检测,待检子串都可以表示为queries[i]=[left,right,k]。我们可以重新排列子串s[left],…,s[right],并从中选择最多k项替换成任何小写英文字母。如果在上述检测过程中,子串可以变成回文形式的字符串,那么检测结果为true,否则结果为false。返回答案数组answer[],其中answer[i]是第i个待检子串queri
sjsjs11
·
2024-08-25 22:31
精选
数据结构
数据结构
leetcode
上一页
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
其他