草庐IT

LeetCode_day

全部标签

2 第一章数组 977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II ,总结 Day2

977.有序数组的平方力扣 这道题目最开始我是认为直接每个数平方然后再重新排序。这样可以通过,但是有更简便的方法,双指针利用了排序数组的思想,最大的数只能从数组的首尾两端产生。所以新建一个数组然后每次都放进去即可。209.长度最小的子数组力扣 题目属于典型的滑动窗口问题,从最开始的一直往后找知道找到合适的结点。我这道题目最开始少考虑了当他没有找到符合题目要求的数组,直接返回了res,所以出错。59.螺旋矩阵II力扣class Solution {public:    vector> generateMatrix(int n) {        vector> res(n,vector(n,0)

【算法|动态规划No.6】leetcode63. 不同路径Ⅱ

个人主页:平行线也会相交欢迎点赞👍收藏✨留言✉加关注💓本文由平行线也会相交原创收录于专栏【手撕算法系列专栏】【LeetCode】🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望对大家有所帮助🍓希望我们一起努力、成长,共同进步。点击直接跳转到该题目目录1️⃣题目描述2️⃣题目解析3️⃣解题代码1️⃣题目描述一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用1和0来

【leetcode刷题】68.前 n 个数字二进制中 1 的个数 ——Java版

⭐欢迎订阅《leetcode》专栏,每日一题,每天进步⭐如果最后一位为0,则下一个数字的1个数会+1如果最后一位为1,下一个数字会导致最后一位变成0,进一位,相当于右移一位之后+1的数字中1的个数——leetcode此题热评前言哈喽,大家好,我是一条。糊涂算法,难得糊涂点击跳转到《糊涂算法》专栏学习java大厂面试必备数据结构和算法知识!Question剑指OfferII003.前n个数字二进制中1的个数难度:简单给定一个非负整数n,请计算0到n之间的每个数字的二进制表示中1的个数,并输出一个数组。示例1:输入:n=2输出:[0,1,1]解释:0-->01-->12-->10示例2:输入:n=

day4_24交换链表节点_19删除节点_面链表相交_142环形链表II

24交换链表节点题目链接方案一:自己的方案奇偶节点,思路比代码随想录中的更直观一些,但是需要进行分类讨论,设置的辅助节点也多一些。/***Definitionforsingly-linkedlist.*structListNode{*intval;*ListNode*next;*ListNode():val(0),next(nullptr){}*ListNode(intx):val(x),next(nullptr){}*ListNode(intx,ListNode*next):val(x),next(next){}*};*/classSolution{public:ListNode*swapP

LeetCode 1253. 重构 2 行二进制矩阵

【LetMeFly】1253.重构2行二进制矩阵力扣题目链接:https://leetcode.cn/problems/reconstruct-a-2-row-binary-matrix/给你一个 2 行n列的二进制数组:矩阵是一个二进制矩阵,这意味着矩阵中的每个元素不是 0 就是 1。第0行的元素之和为 upper。第1行的元素之和为lower。第i列(从0开始编号)的元素之和为 colsum[i],colsum 是一个长度为 n 的整数数组。你需要利用 upper,lower 和 colsum 来重构这个矩阵,并以二维整数数组的形式返回它。如果有多个不同的答案,那么任意一个都可以通过本题。

【笔试强训】Day1

🌈欢迎来到笔试强训专栏(꒪ꇴ꒪(꒪ꇴ꒪)🐣,我是Scort目前状态:大三非科班啃C++中🌍博客主页:张小姐的猫~江湖背景快上车🚘,握好方向盘跟我有一起打天下嘞!送给自己的一句鸡汤🤔:🔥真正的大师永远怀着一颗学徒的心作者水平很有限,如果发现错误,可在评论区指正,感谢🙏🎉🎉欢迎持续关注!笔试强训解析🌈欢迎来到笔试强训专栏🌈选择题🌈编程题1️⃣组队竞赛2️⃣删除公共字符📢写在最后🌈选择题1.以下for循环的执行次数是()for(intx=0,y=0;(y=123)&&(x4);x++);A.是无限循环B.循环次数不定C.4次D.3次复习一下for循环(初始化部分;条件判断部分;调整部分){}注意注意

【LeetCode】260.只出现一次的数字 III(找出单身狗)

 👀樊梓慕:个人主页 🎥个人专栏:《C语言》《数据结构》《蓝桥杯试题》🌝每一个不曾起舞的日子,都是对生命的辜负。目录前言:一只单身狗:两只单身狗:前言:本篇主要讲解LeetCode上的经典题型:只出现一次的数字,我汇总了该类问题的两种情况(一只单身狗、两只单身狗)并进行分析讲解和代码实现,学习完本篇文章你会掌握一种全新的思路:异或法,希望大家多多支持博主创作,博主会持续带来更多优质内容🌍=========================================================================GITEE相关代码:🌟fanfei_c的仓库🌟=========

代码随想录day3 | 203.移除链表元素 707.设计链表 206.反转链表

文章目录一、移除链表元素的思想两种方法二、203.移除链表元素三、707.设计链表四、206.反转链表一、移除链表元素的思想直接让前一个节点指向后一个节点即可两种方法第一种:直接删除第二种:头删的时候,直接head=head->next其实这两种方法都没有做到统一第三种:虚拟头结点法这样的话,咱们删除的时候,就是以统一的规则来进行删除啦!二、203.移除链表元素203.移除链表元素法一:原始删除法classSolution{public:ListNode*removeElements(ListNode*head,intval){//头删while(head!=nullptr&&head->va

每日打卡day9——差分矩阵

输入一个 n行 m 列的整数矩阵,再输入 q 个操作,每个操作包含五个整数 x1,y1,x2,y2,c,其中 (x1,y1)和 (x2,y2)表示一个子矩阵的左上角坐标和右下角坐标。每个操作都要将选中的子矩阵中的每个元素的值加上 c。请你将进行完所有操作后的矩阵输出。输入格式第一行包含整数 n,m,q。接下来 n 行,每行包含 m 个整数,表示整数矩阵。接下来 q 行,每行包含 5 个整数 x1,y1,x2,y2,c表示一个操作。输出格式共 n 行,每行 m 个整数,表示所有操作进行完毕后的最终矩阵。数据范围1≤n,m≤10001≤q≤1000001≤x1≤x2≤n1≤y1≤y2≤m−1000

代码随想录Day3 | 链表01-leetcode203、707、206

203-移除链表元素题目链接:移除链表元素思路:链表中元素的添加和删除关键是要保证不断链且指向关系正确。对于删除操作,链的修改涉及将待删除元素的前一个元素指向待删除元素的后一个元素,因此在判断当前元素是否需要删除时,要记录当前元素的前后指针。1.删除头结点时另作考虑算法描述:根据上述描述,删除操作需要记录当前结点的前一个指针,而对于头结点而言没有前一个指针,因此对于将头结点单独考虑。对于后续结点,首先记录前一个结点再判断当前结点是否需要删除,若删除则将前一个结点指向当前结点的next。/***Definitionforsingly-linkedlist.*structListNode{*int