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刷题
力扣
精选算法100道—— 连续数组(前缀和专题)
连续数组(前缀和专题)目录了解题意算法原理❗为什么hash设置成键值对❗与和为K的子数组比较hash的键值对代码实现了解题意我们看到给定数组里面只有0和1,我们要找到一个连续的子数组具有相同数量的0和1,那么我们想想,如果我们给0代替成-1,那么-11-11是不是等于0是不是相当于找到了具有相同数量的0和1了。所以我们首先要想到将0改成-1,然后找到相同的0和1的数量就转换成在数组中最长的子数组中
chlorine5
·
2024-02-08 02:42
算法
leetcode
算法
数据结构
力扣
精选算法100道——和为 K 的子数组[前缀和专题]
和为K的子数组链接目录第一步:了解题意编辑第二步:算法原理第三步:代码第一步:了解题意数组中和为k的连续子数组,我们主要关注的是连续的,比如[1,1,1],和为2的子数组有俩个,比如第一个1和第二个1,还有第二个1和第三个1,都是属于俩种不同的情况。比如[1,2,3],1+2=3属于一组,3也属于一组,所以有俩组。我们可以认为sum-k=0,相当于sum=k属于一种情况,1+2=sum=3还有一种
chlorine5
·
2024-02-08 02:12
算法
算法
leetcode
职场和发展
力扣
优选算法100道——【模板】前缀和(一维)
【模板】前缀和_牛客题霸_牛客网(nowcoder.com)目录了解题意算法原理设定下标为1开始取值的范围实现代码了解题意第一行的3和2,3代表行数,2代表q次查询(查询的次数)第二行124表示n=3个整数(长度为n的数组各个数)第三行和第四行(有几行代表几次查询)分别是1,2和2,3(1,2)代表第一次查询从1到2(这里我们需要注意下标要从1开始)所以我们相加的是1+2=3第一次结果是3。(2,
chlorine5
·
2024-02-08 02:11
算法
算法
力扣
第 383 场周赛 解题报告 | 珂学家 | Z函数/StringHash
前言谁言别后终无悔寒月清宵绮梦回深知身在情长在前尘不共彩云飞整体评价T3是道模拟题,但是感觉题意有些晦涩,T4一眼Z函数,当然StringHash更通用些。新年快乐,_.T1.将单词恢复初始状态所需的最短时间I思路:模拟就是前缀和为0的次数classSolution{publicintreturnToBoundaryCount(int[]nums){intacc=0;intres=0;for(in
珂朵莉MM
·
2024-02-08 01:38
力扣周赛
解题报告
leetcode
算法
职场和发展
力扣
java
python
力扣
第 123 场双周赛 解题报告 | 珂学家 | 二维偏序+单调队列优化
题外话,
力扣
还是实现N久之前的承诺了,命名权奖励,赞一个。
珂朵莉MM
·
2024-02-08 01:07
力扣周赛
解题报告
leetcode
算法
职场和发展
java
开发语言
力扣
每日一题来啦!请查收~(至少是其他数字两倍,两个数组的交集)
747.至少是其他数字两倍的最大数-
力扣
(LeetCode)intdominantIndex(int*nums,intnumsSize){intmax=0;max=nums[0];intindex=0;
pearlthriving
·
2024-02-08 01:35
算法
java
数据结构
LeetCode刷题
最佳时间II
LeetCode上最佳时机II,记录下解题思路其实就是计算整个数组中间每个高点和低点之间的收益。可以通过价格走势来确定,如果是一直上涨的阶段就是每天的价格比后一天低,这里要处理边界问题,就是prices[i]>=prices[i+1],用大于等于是因为如果在上涨趋势中间出现平稳的一天的情况也要计算到上涨阶段,然后再看第三天来确认是下跌还是上涨,如此下跌也是同样。这里的for循环不设置i自增,主要靠
Taec0123
·
2024-02-08 01:05
力扣
236题,二叉树的最近公共祖先
力扣
236题,二叉树的最近公共祖先题目描述给定一个二叉树,找到该树中两个指定节点的最近公共祖先。
瀛台夜雪
·
2024-02-08 01:40
力扣刷题
leetcode
算法
数据结构
力扣
236二叉树的最近公共祖先(c++)
力扣
236二叉树的最近公共祖先(c++)
力扣
题目链接思路遇到这个题目首先想的是要是能自底向上查找就好了,这样就可以找到公共祖先了。那么二叉树如何可以自底向上查找呢?
捷克夜
·
2024-02-08 01:10
leetcode
c++
leetcode
算法
二叉树的最近公共祖先
有兴趣的小伙伴可以去leetcode上面做下这道题,
力扣
我想了挺久的,最后使用的方法还是比较复杂的,在这里贴出来我独立写出来的代码。主要的思路就是
m0_37657276
·
2024-02-08 00:08
算法
二叉树
笔试
算法
二叉树的最近公共祖先,
力扣
目录题目地址:题目:审题目+事例+提示:解题方法:解题分析:解题思路:代码实现:补充说明:代码优化:代码实现(存储父节点):题目地址:236.二叉树的最近公共祖先-
力扣
(LeetCode)难度:中等今天刷二叉树的最近公共祖先
大数据SQLboy
·
2024-02-08 00:05
#
树/二叉树
力扣300+
算法
数据结构
补题:leetcode第382场周赛 3022. 给定操作次数内使剩余元素的或值最小
3022.给定操作次数内使剩余元素的或值最小-
力扣
(LeetCode)拆位n个数进行或运算的结果最小,每次操作可以对相邻的两个数进行与运算,至多进行k次操作n个数进行或运算,可以对每个数进行拆解,拆解成最小的
.SacaJawea
·
2024-02-08 00:40
练习赛补题
leetcode
算法
数据结构
leetcode刷题
290单词规律
290.单词规律给定一种规律pattern和一个字符串str,判断str是否遵循相同的规律。这里的**遵循**指完全匹配,例如,pattern里的每个字母和字符串str中的每个非空单词之间存在着双向连接的对应规律。示例1:输入:pattern="abba",str="dogcatcatdog"输出:true示例2:输入:pattern="abba",str="dogcatcatfish"输出:fa
在飞的小猪
·
2024-02-08 00:51
力扣
回文链表
力扣
回文链表1.要求2.思想及代码3.问题1.要求请判断一个链表是否为回文链表。
dayday学习
·
2024-02-07 23:51
领扣刷题
力扣回文链表
力扣
之链表9—回文链表
请判断一个链表是否为回文链表。进阶:你能否用O(n)时间复杂度和O(1)空间复杂度解决此题?方法1将链表元素存入列表后判断但其时间复杂度和空间复杂度为O(n)classSolution:defisPalindrome(self,head:ListNode)->bool:ifnothead:returnTruels=[]cur=headwhilecur:ls.append(cur.val)cur=c
程序媛的攻城之路
·
2024-02-07 23:50
算法与数据结构
链表
指针
数据结构
[
力扣
Hot100]Day23 反转链表
题目描述给你单链表的头节点head,请你反转链表,并返回反转后的链表。出处思路经典考研题,用头插法解决。代码classSolution{public:ListNode*reverseList(ListNode*head){if(!head||!head->next)returnhead;ListNode*p1=head;ListNode*p2=head->next;ListNode*p3=head
谛听misa
·
2024-02-07 23:48
力扣Hot100题
leetcode
链表
算法
[
力扣
Hot100]Day25 环形链表
题目描述给你一个链表的头节点head,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。注意:pos不作为参数进行传递。仅仅是为了标识链表的实际情况。如果链表中存在环,则返回true。否则,返回false。出处思路经典考研题,使用快慢两指针,若有换两指针必
谛听misa
·
2024-02-07 23:48
力扣Hot100题
leetcode
链表
算法
[
力扣
Hot100]Day26 环形链表 II
题目描述给定一个链表的头节点head,返回链表开始入环的第一个节点。如果链表无环,则返回null。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从0开始)。如果pos是-1,则在该链表中没有环。注意:pos不作为参数进行传递,仅仅是为了标识链表的实际情况。不允许修改链表。出处思路跟昨
谛听misa
·
2024-02-07 23:48
力扣Hot100题
leetcode
链表
算法
[
力扣
Hot100]Day24回文链表
题目描述给你一个单链表的头节点head,请你判断该链表是否为回文链表。如果是,返回true;否则,返回false。出处思路首先计算链表长度n,然后拿一个数组存前n/2项,若n为奇数则略过第n/2+1项,随后对链表后n/2项遍历,与数组内容比对即可。代码classSolution{public:boolisPalindrome(ListNode*head){vectorstack;intn=0;Li
谛听misa
·
2024-02-07 23:45
力扣Hot100题
leetcode
算法
2021-09-23
IT1.LeetCode
力扣
:在排序数组中查找数字I2021-09-23(剑指Offer53-I.在排序数组中查找数字I)2.《剑指offer》:p257~p265英语1.墨墨背单词:复习50个单词
幸福大黑鸭
·
2024-02-07 21:35
【
力扣
】查找总价格为目标值的两个商品,双指针法
查找总价格为目标值的两个商品原题地址方法一:双指针这道题和
力扣
第一题“两数之和”非常像,区别是这道题已经把数组排好序了,所以不考虑暴力枚举和哈希集合的方法,而是利用单调性,使用双指针求解。
努力学习游泳的鱼
·
2024-02-07 21:56
leetcode
算法
职场和发展
【
力扣
- 回文链表】
题目描述给你一个单链表的头节点head,请你判断该链表是否为回文链表。如果是,返回true;否则,返回false。提示:链表中节点数目在范围[1,100000]内0val;//移动到链表的下一个节点head=head->next;}//使用双指针从数组vals的两端向中间遍历,比较对应位置的值是否相等//注意这里只用了一个循环,本来想用双循环,但是双循环的话没有办法首尾对应for(inti=0,j
六月悉茗
·
2024-02-07 19:47
C语言学习报告
链表
算法
【C语言 -
力扣
- 反转链表】
反转链表题目描述给你单链表的头节点head,请你反转链表,并返回反转后的链表。题解1-迭代假设链表为1→2→3→∅,我们想要把它改成∅←1←2←3。在遍历链表时,将当前节点的next指针改为指向前一个节点。由于节点没有引用其前一个节点,因此必须事先存储其前一个节点。在更改引用之前,还需要存储后一个节点。最后返回新的头引用。//函数:反转单链表structListNode*reverseList(s
六月悉茗
·
2024-02-07 19:16
C语言学习报告
c语言
leetcode
链表
【
力扣
- 时间复杂度和空间复杂度】
力扣
刷题时,题目要求里经常有时间复杂度和空间复杂度的要求。那么,什么是时间复杂度和空间复杂度呢?定义时间复杂度和空间复杂度都是用于衡量算法性能的指标,但它们分别从不同的角度来评估算法的效率。
六月悉茗
·
2024-02-07 19:16
C语言学习报告
leetcode
算法
java
【C语言 - 哈希表 -
力扣
- 相交链表】
相交链表题目描述给你两个单链表的头节点headA和headB,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回null。图示两个链表在节点c1开始相交:题目数据保证整个链式结构中不存在环。注意,函数返回结果后,链表必须保持其原始结构。自定义评测:评测系统的输入如下(你设计的程序不适用此输入):intersectVal-相交的起始节点的值。如果不存在相交节点,这一值为0lis
六月悉茗
·
2024-02-07 19:11
C语言学习报告
c语言
散列表
leetcode
力扣
刷题记录(Java)(一)
两数之和遍历解法(个人版本一)Map映射解法(其他解法)两数相加个人版本一官方版本个人版本二无重复字符的最长子串个人版本一官方版本其他版本一串联所有单词的子串个人版本一官方版本其他版本一找到字符串中所有字母异位词个人版本一个人版本二官方版本一官方版本二寻找两个正序数组的中位数个人版本一官方版本一(二分查找)官方版本二(划分数组)最长回文子串个人版本一官方版本一(动态规划)官方版本二(中心扩散算法)
愿你被这个世界温暖相待
·
2024-02-07 19:10
算法记录
leetcode
java
链表
【
力扣
】快乐数,哈希集合+快慢指针+数学
证明:情况1是存在的,如
力扣
的示例一:接下来只需证明,反复执行getNext操作,最终一定会无限循环(停留在1可以理解为无限的1->1循环)。
努力学习游泳的鱼
·
2024-02-07 19:39
leetcode
哈希算法
算法
【
力扣
】盛最多水的容器,双指针法
盛最多水的容器原题地址方法一:双指针如果使用暴力枚举,时间复杂度为,效率太低,会超时。考虑使用双指针,利用单调性求解。用left和right作为数组height的下标,分别初始化为0和size-1。考虑在区间[left,right]的范围内,理论上会有种配对可能,但其中有一些情况不需要再考虑。其中容量=高度*宽度,即area=min(height[left],height[right])*(rig
努力学习游泳的鱼
·
2024-02-07 19:39
leetcode
算法
职场和发展
力扣
LCP 30. 魔塔游戏(贪心+小顶堆)
力扣
LCP30.魔塔游戏(贪心+小顶堆)LCP30.魔塔游戏贪心模拟过程,将之前扣减的血量都放入优先队列中,每次快死之前,就取出堆顶的元素(扣最多的血)给自己加上,这样的贪心思想能保证我们移动到尾部的元素是最少的优先级队列
小麦China
·
2024-02-07 19:08
力扣刷题
队列
数据结构
面试
queue
c++
每日一题
力扣
2641二叉树的堂兄弟节点Ⅱ
题目描述:给你一棵二叉树的根root,请你将每个节点的值替换成该节点的所有堂兄弟节点值的和。如果两个节点在树中有相同的深度且它们的父节点不同,那么它们互为堂兄弟。请你返回修改值之后,树的根root。注意,一个节点的深度指的是从树根节点到这个节点经过的边数。示例1:输入:root=[5,4,9,1,10,null,7]输出:[0,0,0,7,7,null,11]解释:上图展示了初始的二叉树和修改每个
乐超kawhi
·
2024-02-07 19:38
每日刷题
leetcode
算法
职场和发展
【
力扣
】罗马数字转整数,哈希集合+模拟
罗马数字转整数原题地址方法一:模拟罗马数字是字符串,其中每个字符都对应一个整数值,为了方便查找,可以预先把这种对应关系存储到哈希表中。遍历字符串,对于每个字符,如果该字符不是最右边的字符,且它右边的字符对应的整数值更大一些,就要减去该字符对应的整数值。否则就加上该字符对应的整数值。//方法一:模拟classSolution{public:intromanToInt(strings){intans=
努力学习游泳的鱼
·
2024-02-07 19:38
leetcode
哈希算法
算法
力扣
题目训练(7)
2024年1月31日
力扣
题目训练2024年1月31日
力扣
题目训练387.字符串中的第一个唯一字符389.找不同401.二进制手表109.有序链表转换二叉搜索树114.二叉树展开为链表52.N皇后II2024
落幕·重逢
·
2024-02-07 19:37
编程学习
leetcode
算法
c++
每日一题
力扣
LCP30.魔塔游戏
题目描述:小扣当前位于魔塔游戏第一层,共有N个房间,编号为0~N-1。每个房间的补血道具/怪物对于血量影响记于数组nums,其中正数表示道具补血数值,即血量增加对应数值;负数表示怪物造成伤害值,即血量减少对应数值;0表示房间对血量无影响。小扣初始血量为1,且无上限。假定小扣原计划按房间编号升序访问所有房间补血/打怪,为保证血量始终为正值,小扣需对房间访问顺序进行调整,每次仅能将一个怪物房间(负数的
乐超kawhi
·
2024-02-07 19:07
每日刷题
leetcode
游戏
算法
力扣
:1351. 统计有序矩阵中的负数
每次思考都是一次进步1、简单做法,一行一行的去做二分查找。classSolution{public:intcountNegatives(vector>&grid){intthesize=grid.size();intcount=0;for(introw=0;row=0)l=mid+1;elseif(grid[row][mid]<0)r=mid;}if(l<=grid[row].size()-1&&
宋轻云
·
2024-02-07 18:37
力扣个人刷题题解
leetcode
矩阵
算法
双非本科准备秋招(18.1)——
力扣
二叉树
1、404.左叶子之和方法一:可以在父节点判断一下,如果左子树不为null,并且左子树没有左右子树,说明这是个左叶子节点。classSolution{publicintsumOfLeftLeaves(TreeNoderoot){if(root==null)return0;intLV=sumOfLeftLeaves(root.left);intRV=sumOfLeftLeaves(root.righ
随心自风流
·
2024-02-07 18:00
数据结构
算法
leetcode
秋招
求职招聘
力扣
二叉树
力扣
刷题 - LCP 30. 魔塔游戏
题目:小扣当前位于魔塔游戏第一层,共有N个房间,编号为0~N-1。每个房间的补血道具/怪物对于血量影响记于数组nums,其中正数表示道具补血数值,即血量增加对应数值;负数表示怪物造成伤害值,即血量减少对应数值;0表示房间对血量无影响。小扣初始血量为1,且无上限。假定小扣原计划按房间编号升序访问所有房间补血/打怪,为保证血量始终为正值,小扣需对房间访问顺序进行调整,每次仅能将一个怪物房间(负数的房间
TyuIn
·
2024-02-07 17:53
算法学习
leetcode
算法
java
后端
数据结构
力扣
刷题-135.分发糖果
n个孩子站成一排。给你一个整数数组ratings表示每个孩子的评分。你需要按照以下要求,给这些孩子分发糖果:每个孩子至少分配到1个糖果。相邻两个孩子评分更高的孩子会获得更多的糖果。请你给每个孩子分发糖果,计算并返回需要准备的最少糖果数目。intcandy(vector&ratings){intmint=ratings[0];intn=ratings.size();for(inti=0;ians(n
cynicism??
·
2024-02-07 17:25
C++练手
leetcode
算法
数据结构
力扣
刷题-238.除自身以外数组的乘积
给你一个整数数组nums,返回数组answer,其中answer[i]等于nums中除nums[i]之外其余各元素的乘积。题目数据保证数组nums之中任意元素的全部前缀元素和后缀的乘积都在32位整数范围内。请不要使用除法,且在O(n)时间复杂度内完成此题classSolution{public:vectorproductExceptSelf(vector&nums){intn=nums.size(
cynicism??
·
2024-02-07 17:54
C++练手
leetcode
算法
职场和发展
力扣
刷题-13.罗马数字转整数
罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符数值I1V5X10L50C100D500M1000例如,罗马数字2写做II,即为两个并列的1。12写做XII,即为X+II。27写做XXVII,即为XX+V+II。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如4不写做IIII,而是IV。数字1在数字5的左边,所表示的数等于大数5减小数1得到的数值4。同样地,数字9表示为
cynicism??
·
2024-02-07 17:52
C++练手
leetcode
算法
职场和发展
Leetcode刷题
笔记题解(C++):590. N 叉树的后序遍历
思路:类似于二叉树的排序,这里需要将子树进行依次递归遍历,前序遍历也与之类似/*//DefinitionforaNode.classNode{public:intval;vectorchildren;Node(){}Node(int_val){val=_val;}Node(int_val,vector_children){val=_val;children=_children;}};*/class
Demo.demo
·
2024-02-07 15:25
Leetcode算法题解
leetcode
笔记
c++
Leetcode刷题
笔记题解(C++):257. 二叉树的所有路径
思路:深度优先搜索/***Definitionforabinarytreenode.*structTreeNode{*intval;*TreeNode*left;*TreeNode*right;*TreeNode():val(0),left(nullptr),right(nullptr){}*TreeNode(intx):val(x),left(nullptr),right(nullptr){}*
Demo.demo
·
2024-02-07 15:25
Leetcode算法题解
leetcode
笔记
c++
Leetcode刷题
笔记题解(C++):45. 跳跃游戏 II
classSolution{public:intjump(vector&nums){intans=0;intstart=0;intend=1;while(end=nums.size())returnans+1;}start=end;end=maxpos+1;ans++;}returnans;}};
Demo.demo
·
2024-02-07 15:25
Leetcode算法题解
leetcode
笔记
c++
LeetCode 2641. 二叉树的堂兄弟节点 II:层序遍历并记下兄弟节点
【LetMeFly】2641.二叉树的堂兄弟节点II:层序遍历并记下兄弟节点
力扣
题目链接:https://leetcode.cn/problems/cousins-in-binary-tree-ii/给你一棵二叉树的根
Tisfy
·
2024-02-07 14:20
题解
#
力扣LeetCode
leetcode
题解
二叉树
层序遍历
哈希表
10分钟快速入门正则表达式
在
力扣
上看了一本付费书籍,终于让我入门了正则表达事...问题:"^1[3-9]\\d{9}$"是啥意思读完本篇小笔记,你就知道,啥是"^1[3-9]\\d{9}$"这个是啥意思了。
程序员大雨
·
2024-02-07 14:19
数据库
C语言——移除元素(三种方法)
目录前言一.暴力遍历二.临时数组三.双指针法(推荐)前言https://leetcode.cn/problems/remove-element/这是
力扣
上的一道简单题,我们可以根据前面所讲的顺序表中的删除来实现
只能写一点点_
·
2024-02-07 14:15
C&C++题解
c语言
数据结构
开发语言
vscode
经验分享
笔记
算法
力扣
:78. 子集
回溯解法思路:1.跟前面的组合题目有相同的点,主要区别在于:组合题目是遍历到符合条件的组合时加入li1集合中,子集题目是每递归一次就要把结果加入到li1集合中,并遍历但nums数组的最后。其他点和组合问题一样。classSolution{//接收所有的子集List>li1=newArrayListli2=newArrayList>subsets(int[]nums){//调用回溯函数huisu(n
AnDanXingKo
·
2024-02-07 13:18
回溯
leetcode
算法
代码随想录算法训练营第三十三天|509. 斐波那契数 ,● 70. 爬楼梯 , 746. 使用最小花费爬楼梯
|理论基础|
力扣
刷题总结|动态规划入门_哔哩哔哩_bilibili509.斐波那契数代码随想录视频:手把手带你入门动态规划|LeetCode:509.斐波那契数_哔哩哔哩_bilibiliclassSolution
白白白揍粽
·
2024-02-07 13:35
算法
代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素
LeetCode704二分查找题目链接:
力扣
(LeetCode)官网-全球极客挚爱的技术成长平台视频讲解:手把手带你撕出正确的二分法|二分查找法|二分搜索法|LeetCode:704.二分查找_哔哩哔哩
白白白揍粽
·
2024-02-07 13:34
算法
【
力扣
白嫖日记】SQL
前言练习sql语句,所有题目来自于
力扣
(https://leetcode.cn/problemset/database/)的免费数据库练习题。
Gary.Li
·
2024-02-07 12:24
力扣刷题
leetcode
sql
数据库
【
力扣
白嫖日记】SQL
前言练习sql语句,所有题目来自于
力扣
(https://leetcode.cn/problemset/database/)的免费数据库练习题。
Gary.Li
·
2024-02-07 12:23
力扣刷题
leetcode
sql
数据库
上一页
12
13
14
15
16
17
18
19
下一页
按字母分类:
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
其他