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 121. 买卖股票的最佳时机 java
classSolution{publicintmaxProfit(int[]endurance){if(endurance.length==0)return0;intmin=endurance[0],max=min,result=0;for(inti=1;imax)max=endurance[i];if(max-min>result)result=max-min;}returnresult;}}
笨比master
·
2024-02-05 06:56
leetcode
Leetcode
力扣
121. 买卖股票的最佳时机的解法
给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择某一天买入这只股票,并选择在未来的某一个不同的日子卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0。示例1:输入:[7,1,5,3,6,4]输出:5解释:在第2天(股票价格=1)的时候买入,在第5天(股票价格=6)的时候卖出,最大
璐璐的漫漫代码路
·
2024-02-05 06:56
leetcode
算法
javascript
力扣
121. 买卖股票的最佳时机(dp)
前i天的最大收益=max(前i-1天的最大收益,第i天的价格-前i-1天中的最小价格)classSolution{publicintmaxProfit(int[]prices){if(prices==null||prices.length==0||prices.length==1)return0;intmin=prices[0];intb=0;for(inti=1;i
Object_in_java
·
2024-02-05 06:26
力扣(leetcode)
动态规划
java
leetcode
动态规划
算法
leetcode
力扣
121.买卖股票的最佳时期
题目描述:leetcode121解题方法:1.暴力遍历一开始我们可以尝试遍历股票的所有价格,比较之后找到利润的最大值,但是这种办法的时间复杂度为O(n^2),在这道题目中会超时,我们可以尝试一下贪心算法和动态规划代码:intmaxProfit(int*prices,intpricesSize){intmaxProfit=0;intprofit=0;inti,j;for(i=0;iprices[i]
天线波波
·
2024-02-05 06:55
leetcode
贪心算法
动态规划
力扣
121. 买卖股票的最佳时机 C语言实现
题目描述:给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择某一天买入这只股票,并选择在未来的某一个不同的日子卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0。题目来源官方暴力解法不可用!!会超出时间控制方法:使用动态规划已知i个元素为股票i天的价格大问题:所有天数的最大利润。子
ThePaK
·
2024-02-05 06:23
力扣刷题
leetcode
c语言
算法
力扣
121. 买卖股票的最佳时机 js方法
该题可以看出当买入时间确定,其左边股票价格最小值就是其最大的利润varmaxProfit=function(prices){//该变量记录最低的价格letminPrice=prices[0];//记录最大的利润letmaxProfit=0;if(prices.length==0){return0;}for(leti=0;imaxProfit){maxProfit=prices[i]-minPric
大狼狗
·
2024-02-05 06:23
javascript
力扣
:121. 买卖股票的最佳时机 题解
力扣
:121.买卖股票的最佳时机1题目描述2题解1题目描述给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。
活腻了的火龙果
·
2024-02-05 06:52
java
力扣
121. 买卖股票的最佳时机
题目来源:https://leetcode.cn/problems/best-time-to-buy-and-sell-stock/description/好久没写代码了,啥啥都忘了C++题解1:贪心算法。(来源代码随想录)因为股票就买卖一次,那么贪心的想法很自然就是取最左最小值,取最右最大值,那么得到的差值就是最大利润。时间复杂度:O(n)空间复杂度:O(1)classSolution{publ
江湖人称贺行风
·
2024-02-05 06:21
开始C++吧
leetcode
算法
c++
动态规划
贪心算法
算法训练|乘积最大数组、最长有效括号
152.乘积最大子数组-
力扣
(LeetCode)总结:解题思路是需要维护一个最大值以及一个最小值,因为最小值如果是负数的话乘上接下来的一个负数会有可能成为最大的数代码:classSolution{public
zhangke_EX
·
2024-02-05 05:30
算法
LeetCode刷题
-有序数组的平方
前言说明算法学习,日常刷题记录。题目连接有序数组的平方题目内容给你一个按非递减顺序排序的整数数组nums,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例1:输入:nums=[-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为[16,1,0,9,100]排序后,数组变为[0,1,9,16,100]示例2:输入:nums=[-7,-3,2,3,11]输出:
小鲨鱼FF
·
2024-02-05 05:40
LeetCode:构造有效字符串的最少插入数
-
力扣
(LeetCode)题目描述:给你一个字符串word,你可以向其中任何位置插入“a”、“b”或“c”任意次,返回使word有效需要插入的最少字母数。
神说要有光 ye
·
2024-02-05 04:52
#
LeetCode
leetcode
算法
LeetCode 使循环数组所有元素相等的最少秒数
地址:
力扣
(LeetCode)官网-全球极客挚爱的技术成长平台难度:中等题目描述:给你一个下标从0开始长度为n的数组nums。
神说要有光 ye
·
2024-02-05 04:20
leetcode
算法
力扣
LeetCode:Python3代码解析 — 1.两数之和
力扣
LeetCode:Python解题—1.两数之和两数之和解法一:双循环解法二:缓存数值结果对比两数之和难度:简单给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数
Senimo_
·
2024-02-05 03:03
力扣LeetCode
Python3
leetcode
python
算法
容器缓存
两数之和
【数据结构】链表OJ面试题(题库+解析)
力扣
(LeetCode)官网-全球极客挚爱的技术成长平台思路:遍历整个表,访问每个表的值并且删除再将next的指针指向下一个节点此题比较简单,
CatShitK
·
2024-02-05 03:18
数据结构
数据结构
链表
c语言
算法
开发语言
c++
代码随想录算法训练营第三十九天| 62.不同路径、63. 不同路径 II
62.不同路径题目链接:
力扣
(LeetCode)官网-全球极客挚爱的技术成长平台解题思路:机器人每次只能向下或者向右移动一步。所以只需要考虑当前位置上方和左方元素的值,相加即可。
麦城稻香咖啡
·
2024-02-05 03:13
算法
代码随想录算法训练营第三十八天| 509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
509.斐波那契数题目链接:
力扣
(LeetCode)官网-全球极客挚爱的技术成长平台解题思路:无需思路classSolution{publicintfib(intn){if(n==0)return0;if
麦城稻香咖啡
·
2024-02-05 03:12
算法
你的努力,虽败犹荣
可是每次有比赛时,每当看到姑娘们在球场上奋
力扣
杀扑救时,自己的心也随着她们或欣喜或悲伤。
初秋微雨
·
2024-02-05 03:10
LeetCode 104. 二叉树的最大深度 | Python
104.二叉树的最大深度题目来源:
力扣
(LeetCode)https://leetcode-cn.com/problems/maximum-depth-of-binary-tree题目给定一个二叉树,找出其最大深度
大梦三千秋
·
2024-02-05 01:44
力扣
小试牛刀
153.寻找旋转排序数组中的最小值提示中等已知一个长度为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]]旋转一次的结果为数组[a[n-1],a[0]
哥别敲代码了
·
2024-02-05 01:58
leetcode
算法
数据结构
Leetcode刷题
笔记题解(C++):200. 岛屿数量
思路:利用深度优先搜索的思路来查找1身边的1,并且遍历之后进行0替换防止重复dfs,代码如下所示classSolution{public:intnumIslands(vector>&grid){introw=grid.size();intcol=grid[0].size();intnumoflands=0;//从第一行开始遍历,是岛屿则进行周围深度优先搜索for(intr=0;r>&grid,in
Demo.demo
·
2024-02-05 00:48
Leetcode算法题解
leetcode
笔记
c++
Leetcode刷题
笔记题解(C++):1863. 找出所有子集的异或总和再求和
思路如下:递归思路,依次遍历数组中的数,当前数要不要选择像二叉树一样去遍历如下图所示00(选5)5(不选5)0101060606060+6+1+7+5+3+4+2=28classSolution{public:intres=0;intn=0;intsubsetXORSum(vector&nums){n=nums.size();dfs(nums,0,0);returnres;}voiddfs(vec
Demo.demo
·
2024-02-05 00:48
Leetcode算法题解
leetcode
笔记
c++
Leetcode刷题
笔记题解(C++):66. 加一
思路:分为两种情况1.没有进位,直接+完就完,比如46+1=472.有进位而且还需要扩展一位,比如99+1=100代码如下:classSolution{public:vectorplusOne(vector&digits){intjinwei=1;for(inti=digits.size()-1;i>=0;i--){inttemp=digits[i];digits[i]=(temp+jinwei)
Demo.demo
·
2024-02-05 00:17
Leetcode算法题解
c++
leetcode
数据结构
Leetcode刷题
笔记题解(C++):6. Z 字形变换
思路:根据每个字符的下标来确定它在哪一行,然后生产新的字符串即可代码如下:classSolution{public:stringconvert(strings,intnumRows){intsize=s.length();//行数取定义行数,如果字符串的长度小于行数的话则取字符串长度numRows=min(numRows,size);//如果字符串的长度为1或者行数为1时,直接输出原字符串if(n
Demo.demo
·
2024-02-05 00:17
Leetcode算法题解
字符串
c++
leetcode
算法
Leetcode刷题
笔记题解(C++):18. 四数之和
思路:在三数之和的基础上加一层循环即可,注意跳过相等的元素。代码如下,思路也可以看看我的注释:classSolution{public:vector>fourSum(vector&nums,inttarget){//先从小到大进行排序sort(nums.begin(),nums.end());//存放结果vector>result;//数组大小intsize=nums.size();//选择第一个
Demo.demo
·
2024-02-05 00:17
Leetcode算法题解
c++
算法
leetcode
数据结构
Leetcode刷题
笔记题解(C++):LCR 016.无重复字符的最长子串
思路:利用滑动窗口的思想,用起始位置startindex和curlength来记录这个滑动窗口的大小,并且得出最长距离;利用哈希表来判断在滑动窗口中是否存在重复字符,代码如下所示:classSolution{public:intlengthOfLongestSubstring(strings){//如果为空字符串,则返回0if(s.length()==0)return0;intmaxlength=
Demo.demo
·
2024-02-05 00:17
Leetcode算法题解
leetcode
笔记
c++
Leetcode刷题
笔记题解(C++):51. N皇后
思路:递归回溯符合规则:左上方(斜),上方(列),右上方(斜)都没有放置Q从第一行找位置,在第一行中遍历找位置,如果符合要求则放置皇后进入到下一行或者不放皇后看下一个位置如果最后行数=要求的n,则得到结果,大概思路图:(4皇后为例)看图大概能看懂的吧,几乎把每一种结果都试了,最后行数=n的话则为结果,剪枝的条件是符合上面那个规则代码如下:classSolution{public:vector>so
Demo.demo
·
2024-02-05 00:47
剪枝
leetcode
c++
N皇后问题
递归回溯
Leetcode刷题
笔记题解(C++):94. 二叉树的中序遍历
思路:利用栈做辅助来写算法,具体流程可见下图:帮助理解classSolution{public:vectorinorderTraversal(TreeNode*root){vectorres;stacks;while(root||!s.empty()){if(root){s.push(root);root=root->left;}else{root=s.top();res.push_back(ro
Demo.demo
·
2024-02-05 00:46
Leetcode算法题解
c++
算法
leetcode
二叉树
栈
Leetcode刷题
笔记题解(C++):1306. 跳跃游戏 III
利用BFS的思路,注意标记已经走过的下标,还有两种跳跃的情况向前走或者向后走。代码如下:classSolution{public:boolcanReach(vector&arr,intstart){if(arr[start]==0)returntrue;queueq;vectorused(arr.size());q.push(start);used[start]=true;while(!q.emp
Demo.demo
·
2024-02-05 00:46
Leetcode算法题解
bfs
c++
leetcode
数据结构
算法
Leetcode刷题
笔记题解(C++):141. 环形链表
解决思路:常规做法就是利用辅助数据来记录遍历的节点,如果当前遍历的节点在辅助空间中存在即存在循环链表,否则没有存在循环链表。但是需要空间比较大。这里思路是用两个节点不同速度去遍历,一个走两步,一个走一步,在遍历不为空的情况下如果某次相遇则是回环链表。代码如下:/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*n
Demo.demo
·
2024-02-05 00:16
Leetcode算法题解
c++
leetcode
链表回环
Leetcode刷题
笔记题解(C++):739. 每日温度
###解题思路:利用栈来解决。注意的是栈中压入的下标的值首先压入0如果栈不为空且要压入的下标值i有T[i]>T[栈顶元素]则res[栈顶元素]=i-栈顶元素否则继续压栈,直到压完T中所有的数据为止。还要注意的是,开始对res全部赋值为0,这就对栈中的元素没弹出来的默认为0;这里附一下图吧,好理解一点。代码如下:classSolution{public:vectordailyTemperatures
Demo.demo
·
2024-02-05 00:16
Leetcode算法题解
c++
栈算法
leetcode
Leetcode刷题
笔记题解(C++):36. 有效的数独
思路一:暴力破解,两个二维数组记录行、列对应的数字出现的次数,比如rows[i][index]表示的数字index在i行出现的次数,三维数组记录每个块中对应数字出现的次数,比如boxes[i/3][j/3][index]表示的数字index在[i/3][j/3]个块中出现的次数,然后进行判断可以得出结果,超过1则不符合代码如下:classSolution{public:boolisValidSud
Demo.demo
·
2024-02-05 00:45
Leetcode算法题解
leetcode
笔记
c++
leetcode常见错误
1runtimeerror:loadofnullpointeroftype‘std::_Bit_type‘(aka‘unsignedlong‘)(stl_bvector)
力扣
:runtimeerror:
youzjuer
·
2024-02-04 23:18
C及python语言学习
leetcode
算法
职场和发展
最短编辑距离问题与动态规划----LeetCode 72.编辑距离
原题链接:72.编辑距离-
力扣
(LeetCode)动态规划分析动态规划的核心动态规划通常用于求解最优化问题。其核心思想包括两个主要部分
派大星45599
·
2024-02-04 21:00
力扣
数据结构与算法分析
动态规划
leetcode
算法
数据结构
java
Leetcode高频题:213打家劫舍II
题目链接:
力扣
(LeetCode)官网-全球极客挚爱的技术成长平台题目描述你是一个专业的小偷,计划偷窃沿街的房屋,每间房内都藏有一定的现金。
鱼跃鹰飞
·
2024-02-04 21:42
Leetcode
数据结构与算法
高频面试题
leetcode
算法
职场和发展
Leetcode高频题:198打家劫舍1
题目链接
力扣
(LeetCode)官网-全球极客挚爱的技术成长平台题目描述你是一个专业的小偷,计划偷窃沿街的房屋。
鱼跃鹰飞
·
2024-02-04 21:10
高频面试题
数据结构与算法
Leetcode
leetcode
算法
职场和发展
反转单链表LeetCode 206. 反转链表 92. 反转链表 II
//单链表节点的结构publicclassListNode{intval;ListNodenext;ListNode(intx){val=x;}}一、递归反转整个链表206.反转链表一、
力扣
示例206.
茶色岛^
·
2024-02-04 20:51
LeetCode
链表
算法
数据结构
LeetCode刷题
实战92:反转链表 II
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选!今天和大家聊的问题叫做反转链表II,我们先来看题面:https://leetcode-cn.com/problems/reverse-linked-list-ii/Reversealinkedlistfrompos
程序IT圈
·
2024-02-04 20:45
链表
算法
数据结构
leetcode
单链表
933. 最近的请求次数( 队列 或 数组模拟队列Queue )
QuestionIdeas1、Answer(Java)-队列实现Code2、Answer(Java)-数组模拟队列Code3、Answer(Java)-简单模拟CodeQuestion933.最近的请求次数来源:
力扣
Listen 1024
·
2024-02-04 20:28
#
Leetcode每日一题
java
算法
数据结构
队列
leetcode
DS:经典算法OJ题(2)
一、旋转数组(
力扣
)经典算法OJ题:旋转数组思路1:每次挪动1位,右旋k次时间复杂度:o(N^2)右旋最好情况:k是n的倍数,相当于不右旋,此时为o(1)右旋最坏情况:k%n==n-1,此时为o(N^2
✿ ༺小陈在拼命༻✿
·
2024-02-04 20:58
数据结构
算法
c语言
数据结构
开发语言
笔记
五、leetcode之三数之和(
力扣
热题HOT100系列)
三数之和问题描述:问题分析:特别注意:实现思路:实现代码问题描述:问题分析:其实三数之和很类似于两数之和的问题。两数之和是寻找两个数字之和满足给定的目标值。这个场景中,给定的目标值是题目所给定的不变值。而三数之和,我们可以拆分的细一点。假如给定数组1234,target=0。我们进行求解的时候,可以先拿出来一个值,假如说拿出来1,那么我们还需要找出另外两个数的和是(0-1)也就是-1即可。所以问题
KeinoJust
·
2024-02-04 19:14
指针
力扣
面试150 只出现一次的数字Ⅱ 哈希 统计数位 DFA有穷自动机
Problem:137.只出现一次的数字II文章目录思路哈希位数统计DFA状态机思路参考哈希⏰时间复杂度:O(n)O(n)O(n)空间复杂度:O(n)O(n)O(n)classSolution{publicintsingleNumber(int[]nums){Mapmap=newHashMap>i)&1)==1)cnt[i]++;intans=0;for(inti=0;i<32;i++)if((
兑生
·
2024-02-04 19:13
面试150
leetcode
面试
哈希算法
力扣
hot100【Day4】
文章目录12.罗马数字转整数14.最长公共前缀15.三数之和解法16.最接近的三数之和解法17.电话号码的字母组合解法18.四数之和解法19.删除链表的倒数第N个结点解法20.有效的括号解法21.合并两个有序链表解法22.括号生成23.合并k个升序链表解法24.两两交换链表中的结点解法25.K个一组反转列表解法26.删除有序数组中的重复项解法27.移除元素解法28.实现strStr()解法解法29
luckycccccc
·
2024-02-04 19:13
leetcode
算法
java
力扣
hot100 三数之和 双指针 细节去重
Problem:15.三数之和文章目录思路Code思路参考Code⏰时间复杂度:O(n2)O(n^2)O(n2)空间复杂度:O(1)O(1)O(1)classSolution{publicList>threeSum(int[]nums){List>res=newArrayList0)//最小数已经>0,和不可能==0break;//当前数和前一个数相同,去重if(i>0&&nums[i]==nu
兑生
·
2024-02-04 19:12
力扣
hot100
leetcode
python
算法
力扣
第一题——两数之和
给定一个整数数组nums和一个整数目标值target,请你在该数组中找出和为目标值target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例1:输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。示例2:输入:num
桶的奇妙冒险
·
2024-02-04 17:30
leetcode刷题
leetcode
算法
数据结构
5-树-二叉树的层序遍历
这是树的第5篇算法,
力扣
链接。给你二叉树的根节点root,返回其节点值的层序遍历。(即逐层地,从左到右访问所有节点)。
若呓
·
2024-02-04 17:14
白话算法
算法
数据结构
6-树-二叉树的层序遍历 II
这是树的第7篇算法,
力扣
链接。给你二叉树的根节点root,返回其节点值自底向上的层序遍历。
若呓
·
2024-02-04 17:14
白话算法
算法
数据结构
4-树-对称二叉树
这是树的第4篇算法,
力扣
链接。给你一个二叉树的根节点root,检查它是否轴对称。
若呓
·
2024-02-04 17:13
白话算法
算法
数据结构
2-树-恢复二叉搜索树
这是树的第二篇算法,
力扣
链接。给你二叉搜索树的根节点root,该树中的恰好两个节点的值被错误地交换。请在不改变其结构的情况下,恢复这棵树。
若呓
·
2024-02-04 17:43
白话算法
数据结构
算法
7-树-二叉树的锯齿形层序遍历
这是树的第7篇算法,
力扣
链接。给你二叉树的根节点root,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。
若呓
·
2024-02-04 17:06
白话算法
算法
数据结构
每日一题
力扣
292 Nim游戏
292.Nim游戏题目描述:你和你的朋友,两个人一起玩Nim游戏:桌子上有一堆石头。你们轮流进行自己的回合,你作为先手。每一回合,轮到的人拿掉1-3块石头。拿掉最后一块石头的人就是获胜者。假设你们每一步都是最优解。请编写一个函数,来判断你是否可以在给定石头数量为n的情况下赢得游戏。如果可以赢,返回true;否则,返回false。示例1:输入:n=4输出:false解释:以下是可能的结果:1.移除1
乐超kawhi
·
2024-02-04 16:30
每日刷题
leetcode
算法
上一页
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
其他