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
介绍二、算法和数据结构入门2.1时间复杂度2.2空间复杂度2.3基础排序算法2.3.1选择排序算法2.3.2冒泡排序算法三、数组3.1二分法查找法3.2双指针法四
晚安66
·
2024-02-11 07:52
算法
算法
【算法与数据结构】42、
LeetCode
接雨水
文章目录一、题目二、解法三、完整代码所有的
LeetCode
题解索引,可以看这篇文章——【算法和数据结构】
LeetCode
题解。
晚安66
·
2024-02-11 07:52
算法
算法
每日OJ题_位运算③_力扣面试题 01.01. 判定字符是否唯一
示例1:输入:s="
leetcode
"输出:false示例2:输入:s="abc"输出:true限制:026)//鸽巢原理优化returnfalse;intbits=0;for(auto&e:astr)
GR鲸鱼
·
2024-02-11 07:51
每日OJ题
leetcode
算法
c++
位图
位运算
【算法与数据结构】496、503、
LeetCode
下一个更大元素I II
文章目录一、496、下一个更大元素I二、503、下一个更大元素II三、完整代码所有的
LeetCode
题解索引,可以看这篇文章——【算法和数据结构】
LeetCode
题解。
晚安66
·
2024-02-11 07:50
算法
算法
Leetcode
121 买卖股票的最佳时机
题意理解:给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择某一天买入这只股票,并选择在未来的某一个不同的日子卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0。注意:这里只有一只股票,只进行一次买卖,求最大利益。所以:对于每一天,都有两个状态:持有股票、不持有股票这里定义一个二维
庄园特聘拆椅狂魔
·
2024-02-11 07:20
刷题训练营
leetcode
算法
数据结构
算法学习——
LeetCode
力扣二叉树篇2
算法学习——
LeetCode
力扣二叉树篇2107.二叉树的层序遍历II107.二叉树的层序遍历II-力扣(
LeetCode
)描述给你二叉树的根节点root,返回其节点值自底向上的层序遍历。
拉依达不拉胯
·
2024-02-11 06:43
LeetCode算法学习
算法
学习
leetcode
c++
c
算法学习——
LeetCode
力扣二叉树篇3
算法学习——
LeetCode
力扣二叉树篇3116.填充每个节点的下一个右侧节点指针116.填充每个节点的下一个右侧节点指针-力扣(
LeetCode
)描述给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点
拉依达不拉胯
·
2024-02-11 06:43
LeetCode算法学习
算法
学习
leetcode
c++
c语言
算法学习——
LeetCode
力扣二叉树篇1
算法学习——
LeetCode
力扣二叉树篇1144.二叉树的前序遍历144.二叉树的前序遍历-力扣(
LeetCode
)描述给你二叉树的根节点root,返回它节点值的前序遍历。
拉依达不拉胯
·
2024-02-11 06:42
LeetCode算法学习
算法
学习
leetcode
c++
c
算法学习——
LeetCode
力扣栈与队列篇2
算法学习——
LeetCode
力扣栈与队列篇2150.逆波兰表达式求值150.逆波兰表达式求值-力扣(
LeetCode
)描述给你一个字符串数组tokens,表示一个根据逆波兰表示法表示的算术表达式。
拉依达不拉胯
·
2024-02-11 06:11
LeetCode算法学习
算法
学习
leetcode
c++
c语言
春节每日一题~(自除数)
728.自除数-力扣(
LeetCode
)#includeint*selfDividingNumbers(intleft,intright,int*returnSize){int*result=(int*
pearlthriving
·
2024-02-11 06:07
算法
数据结构
Leetcode
#15 三数之和题解
题目描述给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c,使得a+b+c=0?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:给定数组nums=[-1,0,1,2,-1,-4],满足要求的三元组集合为:[[-1,0,1],[-1,-1,2]]题解排序处理;设置三个指针:i用于遍历,j=i+1,k=size()-1;j、k从两侧向中间移动,
__CALM
·
2024-02-11 06:59
【
LeetCode
】332. 重新安排行程(困难)——代码随想录算法训练营Day30
题目链接:332.重新安排行程题目描述给你一份航线列表tickets,其中tickets[i]=[fromi,toi]表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。所有这些机票都属于一个从JFK(肯尼迪国际机场)出发的先生,所以该行程必须从JFK开始。如果存在多种有效的行程,请你按字典排序返回最小的行程组合。例如,行程["JFK","LGA"]与["JFK","LGB"]相比就更小,
晴雪月乔
·
2024-02-11 06:16
代码随想录算法训练营
#
LeetCode
回溯法
算法
代码随想录算法训练营
leetcode
回溯法
【
LeetCode
】51. N 皇后(困难)——代码随想录算法训练营Day30
题目链接:51.N皇后题目描述按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个不同的n皇后问题的棋子放置方案,该方案中'Q'和'.'分别代表了皇后和空位。示例1:输入:n=4输出:[[".Q..","...Q","Q.
晴雪月乔
·
2024-02-11 06:16
代码随想录算法训练营
#
LeetCode
回溯法
算法
代码随想录算法训练营
leetcode
回溯法
【
LeetCode
】78. 子集(中等)——代码随想录算法训练营Day28
题目链接:78.子集题目描述给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。示例1:输入:nums=[1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例2:输入:nums=[0]输出:[[],[0]]提示:1<=nums.length<=10-10<=nums
晴雪月乔
·
2024-02-11 06:45
代码随想录算法训练营
#
LeetCode
回溯法
算法
代码随想录算法训练营
leetcode
回溯法
LeetCode
---382周赛---位运算
题目列表3019.按键变更的次数3020.子集中元素的最大数量3021.Alice和Bob玩鲜花游戏3022.给定操作次数内使剩余元素的或值最小一、按键变更的次数题目简单明了,就是看相邻的两个字母是否相等,不区分大小写,直接遍历统计即可,这里讲一个位运算的小技巧代码如下classSolution{public:intcountKeyChanges(strings){intans=0;for(int
竹下为生
·
2024-02-11 06:14
leetcode
算法
职场和发展
LeetCode
---383周赛
题目列表3028.边界上的蚂蚁3029.将单词恢复初始状态所需的最短时间I3030.找出网格的区域平均强度3031.将单词恢复初始状态所需的最短时间II一、边界上的蚂蚁这题没什么好说的,模拟就行,本质就是看前缀和有几个为0。代码如下classSolution{public:intreturnToBoundaryCount(vector&nums){intans=0,sum=0;for(autox:
竹下为生
·
2024-02-11 05:44
leetcode
算法
职场和发展
leetcode
303 区域和检索 - 数组不可变 golang实现
303.区域和检索-数组不可变image.png解题思路典型的前缀和题目根据nums计算前缀和数组,添加辅助位,方便后续操作。(编码注意点见下)计算区间,因为加了辅助位。sum[j+1]=nums[0]+nums[1]+...+nums[j],sum[i]=nums[0]+nums[1]+...+nums[i-1].所以sum[j+1]-sum[i]=nums[i]+...nums[j].为区间和
lucasgao
·
2024-02-11 05:45
LeetCode
153.寻找旋转排序数组中的最小值(官方解题分析)
153.寻找旋转排序数组中的最小值题意分析:由于数组是升序排序旋转形成的,可知数组表现形式为先升序,在降序,在升序,具体表现如下图所示。由图可知,最小值总是小于最后一个值,因此可以通过二分法查找的方法找到最小值。思路分析:1.定义最左值low,最右值high2.中间值有两种情况,2.1在最小值的右边,因此我们可以忽略二分查找区间的右半部分。2.2在最小值的左边,因此我们可以忽略二分查找区间的左半部
blog_wanghao
·
2024-02-11 04:42
C++
leetcode
算法
LeetCode
153
classSolution{public:intfindMin(vector&nums){intn=nums.size();if(n==1){returnnums[0];}if(nums[0]>1;if(nums[mid]>=nums[0]){l=mid+1;}else{r=mid;}}returnnums[l];}};
心瘾こころ
·
2024-02-11 04:42
LeetCode面试经典
c++
leetcode
算法
数据结构
leetcode
24
24.两两链表交换链表中的节点已经给出了链表节点结构类:publicclassListNode{intval;ListNodenext;ListNode(){}ListNode(intval){this.val=val;}ListNode(intval,ListNodenext){this.val=val;this.next=next;}}简而言之,我们对链表结构的改变(节点的增删改),本质上就是
Benaso
·
2024-02-11 04:42
leetcode
leetcode
算法
职场和发展
leetcode
153 二分法,办法不是最优,但是很好理解
153.寻找旋转排序数组中的最小值难度中等748收藏分享切换为英文接收动态反馈已知一个长度为n的数组,预先按照升序排列,经由1到n次旋转后,得到输入数组。例如,原数组nums=[0,1,2,4,5,6,7]在变化后可能得到:若旋转4次,则可以得到[4,5,6,7,0,1,2]若旋转7次,则可以得到[0,1,2,4,5,6,7]注意,数组[a[0],a[1],a[2],...,a[n-1]]旋转一次
风一样的航哥
·
2024-02-11 04:11
C/C++编程序笔记
leetcode
学习
Leetcode
153 154
寻找旋转排序数组中的最小值classSolution{public:intfindMin(vector&nums){intl=0,r=nums.size()-1,ans=-1;while(l&nums){intl=0,r=nums.size()-1;while(lnums[r]){l=mid+1;}elser--;}returnnums[l];}};
henujolly
·
2024-02-11 04:11
leetcode
leetcode
算法
数据结构
leetcode
153, 154 旋转数组最小值问题
第一件要明确的事,咱们要找的元素肯定在右半部分,当然可能不存在左半部分。这样一来,我们希望在二分的时候,如果只有右半部分,也能求出最终解,这就需要我们必须和右端的元素进行比较。如果和左边比较,当我们完全进入右半部分时,指针根本处理不了这种情况。第二件事就是,当mid和r处元素相等时,要r–。这个基本可以当成结论来看了,由于无法判断,只能退化成O(N)。这是一种无奈的妥协。两个题代码分别如下:cla
abant2
·
2024-02-11 04:41
二分查找
LeetCode
153题
publicstaticintfindMin(int[]nums){if(nums.length==1)returnnums[0];if(nums.length==2)returnMath.min(nums[0],nums[1]);if(nums[0]=nums[left]){if(nums[mid]>nums[mid-1]&&nums[mid]>nums[mid+1]){returnnums[m
乌龙茶不是可燃的嘛
·
2024-02-11 04:41
LeetCode
leetcode
算法
leetcode
153
1classSolution:2deffindMin(self,nums:'List[int]')->int:3l=04h=len(nums)-15whilelnums[h]:8l=m+19else:10h=m11returnnums[l]40ms,13.1mb二分查找的变种,感觉怪怪的。相较而言,还是下面的这种更容易理解吧:1classSolution:2deffindMin(self,nums
weixin_34092455
·
2024-02-11 04:41
leetcode
153 154. Find Minimum in Rotated Sorted Array I/II
leetcode
153154.FindMinimuminRotatedSortedArrayI/II从自己的博客转载。
Brave&Young
·
2024-02-11 04:10
题解
leetcode
分治
二分查找
算法---
LeetCode
153. 寻找旋转排序数组中的最小值
1.题目原题链接假设按照升序排序的数组在预先未知的某个点上进行了旋转。(例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。请找出其中最小的元素。你可以假设数组中不存在重复元素。示例1:输入:[3,4,5,1,2]输出:1示例2:输入:[4,5,6,7,0,1,2]输出:0RelatedTopics数组二分查找26102.题解2.1解法1:二分查找每次比较nums[m
知北行
·
2024-02-11 04:10
算法
算法
数据结构
leetcode
[C++]
Leetcode
153.寻找旋转排序数组中的最小值
153.寻找旋转排序数组中的最小值题目:假设按照升序排序的数组在预先未知的某个点上进行了旋转。(例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。请找出其中最小的元素。你可以假设数组中不存在重复元素。示例1:输入:[3,4,5,1,2]输出:1示例2:输入:[4,5,6,7,0,1,2]输出:0classSolution{public:intfindMin(vect
Arvin____
·
2024-02-11 04:40
Leetcode刷题
leetcode
算法
c++
Leetcode
153. Find Minimum in Rotated Sorted Array
文章作者:Tyan博客:noahsnail.com|CSDN|简书1.Description2.SolutionclassSolution{public:intfindMin(vector&nums){intleft=0;intright=nums.size()-1;while(left=nums[left]){left=mid+1;}else{right=mid;}}returnnums[lef
SnailTyan
·
2024-02-11 04:10
Leetcode
Leetcode
leetcode
153
153寻找旋转排序数组中的最小值这道题,如果我们熟悉数组api,可以直接用Arrays.sort()秒杀,这个方法使用了双轴快速排序算法。解法1如下:classSolution{publicintfindMin(int[]nums){Arrays.sort(nums);returnnums[0];}}第二种解法看到时间复杂度为O(log^n)我们第一时间应该想到二分查找,classSolution
Benaso
·
2024-02-11 04:09
leetcode
leetcode
算法
排序算法
leetcode
153. 寻找旋转排序数组中的最小值
题目:153.寻找旋转排序数组中的最小值153.寻找旋转排序数组中的最小值难度中等假设按照升序排序的数组在预先未知的某个点上进行了旋转。例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2]。请找出其中最小的元素。示例1:输入:nums=[3,4,5,1,2]输出:1示例2:输入:nums=[4,5,6,7,0,1,2]输出:0示例3:输入:nums=[1]输出:1提示:1
编程小耗子
·
2024-02-11 04:09
算法
二分法
算法
数据结构
leetcode
LeetCode
练习day3-树相关
LeetCode
103二叉树的锯齿形层序遍历题目详情给你二叉树的根节点root,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。
码农朱同学
·
2024-02-11 03:07
LeetCode
:51.N皇后
典型的回溯法思路:从第一行开始,取第一个列,判断是否可以填Q,可以的话,进入第二层,依次选列,如果可以填Q,则下探到下一层,如果不可以,则回溯。关键:如何判断是否可以填Q,即当前(row,col)是否合法,可以从数学坐标斜率上发现如下规律:row+col=常数副对角线的标识col-row=常数主对角线的标识用三个set集合存储前面填入了Q之后,那些列,主副对角线的特征值注意回溯之后,要对相应的se
大秦隐士
·
2024-02-11 03:55
LeetCode
leetcode
leetcode
:51. N皇后
题目:n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。上图为8皇后问题的一种解法。给定一个整数n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个明确的n皇后问题的棋子放置方案,该方案中‘Q’和‘.’分别代表了皇后和空位。示例:输入:4输出:[[".Q…",//解法1“…Q”,“Q…”,“…Q.”],["…Q.",//解法2“Q…”,“…Q”,“.Q…”
暮色恍然
·
2024-02-11 03:55
LeetCode
LeetCode
leetcode
:51.N皇后
起初会想到暴力,但是N不确定,所以不确定for的嵌套层数,所以我们采用回溯算法。树形结构:1.树的深度是第depth层2.树的宽度是对每一行进行遍历代码实现:1.result是三维数组,一个棋盘是二维,N个是三维。2.叶子节点是结果,放入结果集。3.在for循环里已经判断了棋盘是否合法。4.isValid函数判断在该位置是否能够放置皇后
冲冲冲冲冲冲1024
·
2024-02-11 03:25
leetcode
算法
职场和发展
leetcode
:51. N 皇后
51.N皇后来源:力扣(
LeetCode
)链接:https://
leetcode
.cn/problems/n-queens/按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。
uncle_ll
·
2024-02-11 03:25
编程练习-Leetcode
leetcode
八皇后
N皇后
回溯
算法训练
【Py/Java/C++三种语言详解】
LeetCode
每日一题240208【二叉树BFS】
LeetCode
993、二叉树的堂兄弟节点
哈希表储存父节点用以判断是否为堂兄弟pythonjavacpp时空复杂度方法二:在层序遍历中判断是否为同一个父节点pythonjavacpp时空复杂度华为OD算法/大厂面试高频题算法练习冲刺训练题目链接
LeetCode
9
闭着眼睛学算法
·
2024-02-10 23:29
LeetCode
#
BFS
#二叉树
java
c++
leetcode
倾诉
这个"说"是需要时间的,而且其过程往往是带着情绪的言辞,甚至有些偏激,在毫不知情与其无关的接受者看来,就像是你的一场
小题
大做,于他无关痛痒,而最终的结果对于你的那些话只是你覆水难收的追悔莫及与对方对你没有涵养的评价
王者001
·
2024-02-10 23:37
LeetCode
237.删除链表中的节点
请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。现有一个链表--head=[4,5,1,9],它可以表示为:示例1:输入:head=[4,5,1,9],node=5输出:[4,1,9]解释:给定你链表中值为5的第二个节点,那么在调用了你的函数之后,该链表应变为4->1->9.示例2:输入:head=[4,5,1,9],node=1输出:[4,5,9]解释:
饼干不干
·
2024-02-10 23:23
打 家 劫 舍
打家劫舍
LeetCode
198打家劫舍Ⅰ题目描述你是一个专业的小偷,计划偷窃沿街的房屋。
林小果1
·
2024-02-10 22:00
数据结构与算法(java实现)
算法
java
LeetCode
| 1366. Rank Teams by Votes通过投票对团队排名【Python】
LeetCode
1366.RankTeamsbyVotes通过投票对团队排名【Medium】【Python】【排序】Problem
LeetCode
Inaspecialrankingsystem,eachvotergivesarankfromhighesttolowesttoallteamsparticipatedinthecompetition.Theorderingofteamsisdecide
Wonz
·
2024-02-10 22:36
二叉树
Leetcode
965 单值二叉树
来源:力扣(
LeetCode
)链接:https://
leetcode
-
禾木清清
·
2024-02-10 22:39
LeetCode
面试题 03.04. 化栈为队
题目实现一个MyQueue类,该类用两个栈来实现一个队列。示例:MyQueuequeue=newMyQueue();queue.push(1);queue.push(2);queue.peek();//返回1queue.pop();//返回1queue.empty();//返回false说明:你只能使用标准的栈操作–也就是只有pushtotop,peek/popfromtop,size和isemp
小南家的青蛙
·
2024-02-10 22:21
LeetCode
leetcode
java
[
leetcode
]141. Linked List Cycle
题目Givenalinkedlist,determineifithasacycleinit.Torepresentacycleinthegivenlinkedlist,weuseanintegerposwhichrepresentstheposition(0-indexed)inthelinkedlistwheretailconnectsto.Ifposis-1,thenthereisnocycl
SQUA2E
·
2024-02-10 22:30
Leetcode
第 112 场双周赛题解
Leetcode
第112场双周赛题解
Leetcode
第112场双周赛题解题目1:2839.判断通过操作能否让字符串相等I思路代码复杂度分析题目2:2840.判断通过操作能否让字符串相等II思路代码复杂度分析题目
UestcXiye
·
2024-02-10 20:49
Every
day
a
LeetCode
leetcode
数据结构与算法
C++
哈希
数学
滑动窗口
Leetcode
3019. 按键变更的次数
Everydaya
Leetcode
题目来源:3019.按键变更的次数解法1:双指针给你一个下标从0开始的字符串s,该字符串由用户输入。按键变更的定义是:使用与上次使用的按键不同的键。
UestcXiye
·
2024-02-10 20:48
Every
day
a
LeetCode
leetcode
数据结构与算法
C++
双指针
Leetcode
3021. Alice 和 Bob 玩鲜花游戏
Everydaya
Leetcode
题目来源:3021.Alice和Bob玩鲜花游戏解法1:数学Alice和Bob在一个长满鲜花的环形草地玩一个回合制游戏。
UestcXiye
·
2024-02-10 20:48
Every
day
a
LeetCode
数据结构与算法
leetcode
C++
数学
Leetcode
2786. 访问数组中的位置使分数最大
Everydaya
Leetcode
题目来源:2786.访问数组中的位置使分数最大解法1:动态规划状态数组:dp[i][0]:访问下标范围[0,i]中的元素且最后访问的元素是偶数时的最大得分;dp[i][
UestcXiye
·
2024-02-10 20:18
Every
day
a
LeetCode
leetcode
数据结构与算法
C++
动态规划
【
LeetCode
704.二分查找】——二分查找方法汇总
链接:https://
leetcode
.cn/problems/binary-search示例1:输入:nums=[-1,0,3,5,9,12],target=9输出:4解释:9出现在nums中并且下标为
一粒蛋_fc4d
·
2024-02-10 20:07
97. 交错字符串
97.交错字符串题目链接:97.交错字符串代码如下://动态规划跟62不同路径思想类似//参考:https://
leetcode
.cn/problems/interleaving-string/solutions
咔咔咔的
·
2024-02-10 19:51
leetcode
c++
上一页
29
30
31
32
33
34
35
36
下一页
按字母分类:
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
其他