草庐IT

LeetCode题2两数相加

全部标签

算法训练Day35 贪心算法专题 | LeetCode860. 柠檬水找零(没有思路就先模拟过程);406. 根据身高重建队列(不能两头兼顾);452. 用最少数量的箭引爆气球(重叠区间)

前言:算法训练系列是做《代码随想录》一刷,个人的学习笔记和详细的解题思路,总共会有60篇博客来记录,计划用60天的时间刷完。 内容包括了面试常见的10类题目,分别是:数组,链表,哈希表,字符串,栈与队列,二叉树,回溯算法,贪心算法,动态规划,单调栈。博客记录结构上分为思路,代码实现,复杂度分析,思考和收获,四个方面。如果这个系列的博客可以帮助到读者,就是我最大的开心啦,一起LeetCode一起进步呀;) 目录LeetCode860.柠檬水找零 1.思路2.代码实现3.代码实现4.思考与收获LeetCode406.根据身高重建队列1.思路2.代码实现3.复杂度分析4.思考与收获LeetCode4

LeetCode——查询后矩阵的和

目录1、题目2、题目解读3、代码1、题目2718.查询后矩阵的和-力扣(Leetcode)给你一个整数 n 和一个下标从 0 开始的 二维数组 queries ,其中 queries[i]=[typei,indexi,vali] 。一开始,给你一个下标从 0 开始的 nxn 矩阵,所有元素均为 0 。每一个查询,你需要执行以下操作之一:如果 typei==0 ,将第 indexi 行的元素全部修改为 vali ,覆盖任何之前的值。如果 typei==1 ,将第 indexi 列的元素全部修改为 vali ,覆盖任何之前的值。请你执行完所有查询以后,返回矩阵中所有整数的和。示例1:输入:n=3,

算法leetcode|55. 跳跃游戏(rust重拳出击)

文章目录55.跳跃游戏:样例1:样例2:提示:分析:题解:rust:go:c++:python:java:55.跳跃游戏:给定一个非负整数数组nums,你最初位于数组的第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标。样例1:输入: nums=[2,3,1,1,4] 输出: true 解释: 可以先跳1步,从下标0到达下标1,然后再从下标1跳3步到达最后一个下标。样例2:输入: nums=[3,2,1,0,4] 输出: false 解释: 无论怎样,总会到达下标为3的位置。但该下标的最大跳跃长度是0,所以永远不可能到达最后一个下标。提示:

hot1-两数之和

 leetcode原题链接:两数之和题目描述    给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。    你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例:输入:nums=[2,7,11,15],target=9输出:[0,1]解释:因为nums[0]+nums[1]==9,返回[0,1]。示例2:输入:nums=[3,2,4],target=6输出:[1,2]示例3:输入:nums=[3,3],target=6输出:[0,1]解题思

【LeetCode】Day203-最少侧跳次数

题目1824.最少侧跳次数【中等】题解这种后面问题和前面关联的题就容易想到动态规划,问题是dp怎么定义。用0,1,2对跑道进行重新编号,obstacles[i]-1与跑道对应,-1代表无障碍物。状态定义:dp[i][j]表示青蛙到达第i点的第j条跑道所需要的最小侧跳次数。状态转移方程:怎么到达的当前位置呢?有两种方法,第一是从i-1点横着跳过来,第二是从i点其他跑道侧跳过来。首先,如果当前跑道无障碍,青蛙可以不侧跳,直接从i-1点跳到i点,dp[i][j]=dp[i-1][j];如果有障碍,设置dp[i][j]=inf然后,青蛙可以从i点其他跑道侧跳到当前跑道,设minCnt=min(d[i]

代码随想录第一天 | LeetCode704.二分查找,LeetCode 27.移除元素

数组理论基础要点:数组也是数据结构的一种,是存放在连续内存空间上的相同类型数据的集合。数组注意点:数组下标都是从0开始的。数组内存空间的地址是连续的。因为上述两点,数组的在内存空间的地址是连续的,所以我们在删除或者增添元素的时候,就难免要移动其他元素的地址。但在删除的时候,数组的元素是不能删的,只能覆盖。LeetCode704.二分查找题目链接:704.二分查找-力扣(LeetCode)思路:这道题目的前提是数组为有序数组,同时题目还强调数组中无重复元素,因为一旦有重复元素,使用二分查找法返回的元素下标可能不是唯一的,这些都是使用二分法的前提条件。写二分法的要点:对区间的定义要想清楚,区间的定

【LeetCode算法成长之路】滑动窗口算法总结与经典题目分析

前言本文小新为大家带来滑动窗口算法相关知识,经过对滑动窗口算法类题目的总结,为大家分享滑动窗口算法概述(包括:滑动窗口算法思想,滑动窗口算法使用场景,滑动窗口算法使用思路),滑动窗口算法代码模板,以及两个经典例题(长度最小的子数组,最小覆盖子串),帮助大家更好的理解与掌握滑动窗口算法~不积跬步,无以至千里;不积小流,无以成江海。每天进步一点点,在成为强者的路上,小新与大家共同成长!📌博主主页:小新要变强的主页👉Java全栈学习路线可参考:【Java全栈学习路线】最全的Java学习路线及知识清单,Java自学方向指引,内含最全Java全栈学习技术清单~👉算法刷题路线可参考:算法刷题路线总结与相关

【LeetCode算法成长之路】滑动窗口算法总结与经典题目分析

前言本文小新为大家带来滑动窗口算法相关知识,经过对滑动窗口算法类题目的总结,为大家分享滑动窗口算法概述(包括:滑动窗口算法思想,滑动窗口算法使用场景,滑动窗口算法使用思路),滑动窗口算法代码模板,以及两个经典例题(长度最小的子数组,最小覆盖子串),帮助大家更好的理解与掌握滑动窗口算法~不积跬步,无以至千里;不积小流,无以成江海。每天进步一点点,在成为强者的路上,小新与大家共同成长!📌博主主页:小新要变强的主页👉Java全栈学习路线可参考:【Java全栈学习路线】最全的Java学习路线及知识清单,Java自学方向指引,内含最全Java全栈学习技术清单~👉算法刷题路线可参考:算法刷题路线总结与相关

单链表OJ题:LeetCode--138.复制带随即指针的链表

朋友们、伙计们,我们又见面了,本期来给大家解读一下LeetCode中第138道单链表OJ题,如果看完之后对你有一定的启发,那么请留下你的三连,祝大家心想事成!数据结构与算法专栏:数据结构与算法个 人 主 页 :stackY、C语言专栏:C语言:从入门到精通 LeetCode--138.复制带随即指针的链表:https://leetcode.cn/problems/copy-list-with-random-pointer/description/目录1.题目介绍2.实例演示3.解题思路::链接拷贝结点:: ::找拷贝节点的random::::拆解拷贝链表::1.题目介绍给你一个长度为n的链表,

【Leetcode】题库-爽刷简单题(1)

目录写在前面:题目:67.二进制求和-力扣(Leetcode)解题思路:代码:过过过过过过啦!!!!题目:83.删除排序链表中的重复元素-力扣(Leetcode)解题思路:代码:过过过过过过啦!!!!写在最后:写在前面:无论是你学习累了,还是情绪低落,还是生活不如意,哪怕是失恋了,跟我一起,放下生活的担,打开LeetCode,点开题库,选择简单题,快点这个链接,和我一起享受刷题的快乐!题目:67.二进制求和-力扣(Leetcode)解题思路:这道题目其实就是,让我们用代码去模拟二进制的运算,那我们就想一想二进制该咋算,根据小学数学学的知识,要从左往右计算两数相加,当每一位相加的值大于进制,那就