![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
刷题
文章平均质量分 92
.29.
还在路上
展开
-
【Java】基础算法练习题
刷不就完了!原创 2024-03-02 13:10:47 · 913 阅读 · 0 评论 -
①归并排序、快速排序 、堆排序、计数排序[算法、代码模板、面试题]
归并排序是一种分治法(Divide and Conquer)的经典排序算法,它的基本思想是将原始数组划分成较小的数组,然后递归地对这些小数组进行排序,最后再将排好序的小数组合并成一个整体有序的数组。下面是**归并排序的详细过程: ...原创 2023-12-05 16:04:43 · 1074 阅读 · 22 评论 -
【数据结构与算法】单链表反转、双链表反转(含相关题型)
数据结构预算法 __ 链表反转原创 2023-08-01 13:55:09 · 164 阅读 · 0 评论 -
【二进制转换】十进制 转 二进制 (含相关题型)
运算符,也称为按位与运算符,是一种位运算符。它用于对两个整数进行位运算,并生成一个新的整数,其中每个对应位上的值只有在两个操作数对应位上都为 1 的情况下才为 1,否则为 0。按位与运算符使用符号“&”表示。如果两个操作数的对应位都为 1,则结果的对应位为 1。如果两个操作数的对应位之一为 0,则结果的对应位为 0。换句话说,只有当两个操作数的对应位上都为 1 时,结果才为 1。否则,结果为 0。假设我们有两个二进制数:10111001 和 11001100。原创 2023-07-31 15:06:15 · 346 阅读 · 0 评论 -
【Day34】LeetCode算法 -- 3. 无重复字符的最长子串
Java算法题,思路 + 注释原创 2022-10-31 14:05:04 · 200 阅读 · 1 评论 -
【Day33】每日一题 [779. 第K个语法符号 ]
Java刷题原创 2022-10-31 13:59:24 · 273 阅读 · 2 评论 -
【Day32】LeetCode刷刷刷。[1700. 无法吃午餐的学生数量 ]
关注是对作者最大的鼓励喔 ~~原创 2022-10-30 07:43:58 · 379 阅读 · 4 评论 -
【Day31】力扣算法(超详细思路+注释)[1441. 用栈操作构建数组 ] [621. 任务调度器]
刷题记录原创 2022-10-28 18:02:37 · 1119 阅读 · 4 评论 -
【Day30】LeetCode算法 [769. 最多能完成排序的块 ] [2131. 连接两字母单词得到的最长回文串]
三个为回文串怎加长度的因素找到了,就可以动手实现功能,为了获取每个字符串在数组中出现的次数,我们需要遍历数组,同时使用双列集合Map来记录出现的字符串以及出现的次数(Key-Value)。我们需要关注的是,但前遍历过的区块中,最大的元素,如果最大元素与遍历到的下标相等,就说明该分块升序排序后,与原数组升序排序后是等价的,这时候我们就可以记录分块数量。之后按照上述提到的条件,来记录回文串的长度即可,需要注意的是,为了判断字符串中心是否能被获取到,我们设置一个标志,默认值为。给你一个字符串数组 words。原创 2022-10-28 18:01:10 · 547 阅读 · 21 评论 -
【DAY29】LeetCode力扣算法题 [817. 链表组件 ]
解释: 链表中,0 和 1 是相连接的,且 nums 中不包含 2,所以 [0, 1] 是 nums 的一个组件,同理 [3] 也是一个组件,故返回 2。解释: 链表中,0 和 1 是相连接的,3 和 4 是相连接的,所以 [0, 1] 和 [3, 4] 是两个组件,故返回 2。返回列表 nums 中组件的个数,这里对组件的定义为:链表中一段最长连续结点的值(该值必须在列表 nums 中)构成的集合。输入: head = [0,1,2,3,4], nums = [0,3,1,4]是对作者最大的鼓励喔 ~~原创 2022-10-28 17:59:37 · 183 阅读 · 0 评论 -
【Day28】力扣算法(超详细思路+注释) [1790. 仅执行一次字符串交换能否使两个字符串相等 ] [328. 奇偶链表 ][148. 排序链表]
但是链表又没有办法向数组那样通过下标获取,所以我们需要使用到快慢指针,快指针一次走两个节点,慢指针一次走一个节点,那么快指针遍历到链表结尾时,我们的慢指针所在位置就是中间节点的位置。我们就可以将所有奇数节点指向其后偶数节点的下一节点,偶数节点也指向其后奇数节点的下一个节点。我们可以创建两个新的链表,分别代表奇数链表 与 偶数链表,第一个节点是奇数,作为奇数链表的头节点;这时候我们借助递归,用同样的方式将每一个子链表通过中间节点平分,最后得到单个的节点,然后相邻的两个节点按照升序合并,这就是归并操作。原创 2022-10-15 07:30:00 · 1246 阅读 · 54 评论 -
【Day27】 LeetCode算法刷题(思路+注释)[801. 使序列递增的最小交换次数 ]
刷题打卡,第 二十七 天题目、801. 使序列递增的最小交换次数1.`题目描述`:2.`解题思路`:3.`提交代码`:4.`提交结果`:题目、801. 使序列递增的最小交换次数原题链接:801. 使序列递增的最小交换次数 1.题目描述:我们有两个长度相等且不为空的整型数组 nums1 和 nums2 。在一次操作中,我们可以交换 nums1[i] 和 **nums2[i]**的元素。例如,如果 nums1 = [1,2,3,8] , nums2 =[5,6,7,4] ,你可以交换原创 2022-10-11 08:27:29 · 622 阅读 · 34 评论 -
【Day26】LeetCode算法刷题 [856. 括号的分数 ] [234. 回文链表]
⚽来刷题⚽ 记录每日LeetCode喔 ~~原创 2022-10-09 22:50:47 · 444 阅读 · 9 评论 -
【Day25】LeetCode算法刷题[19. 删除链表的倒数第 N 个结点 ] [870. 优势洗牌 ]
⚽求关注⚽ 作者🥇 .29. 🥇 的⚽来刷题⚽ 记录每日LeetCode您的,以及关注是对作者最大的鼓励喔 ~~原创 2022-10-08 22:27:51 · 414 阅读 · 6 评论 -
【Day24】 LeetCode算法题 (注释详细+解题思路)[43. 字符串相乘 ] [1800. 最大升序子数组和]
那么我们可以通过遍历数组来实现,一边遍历数组,一边记录元素和,当检测到下一个元素值小于或等于当前元素,也就代表两者无法构成升序数组,我们将最大元素和记录下来,然后将元素和清零,重复操作。解释:[10,20,30,40,50] 是元素和最大的升序子数组,最大元素和为 150。解释:[10,11,12] 是元素和最大的升序子数组,最大元素和为 33。解释:[5,10,50] 是元素和最大的升序子数组,最大元素和为 65。输入:nums = [12,17,15,13,10,11,12]原创 2022-10-07 13:10:19 · 704 阅读 · 4 评论 -
【Day23】力扣:LeetCode算法刷题 [927. 三等分 ] [415. 字符串相加]
字符串相加,却不可以将字符直接转化为整形来运算,而且需要输出的依旧是字符串,那么为了得到每个位置上的数字,我们可以利用ASCII码值的加减来获取。那么我们每次就将两数字之和的个位数连接进结果的字符串中,十位数则累加进下一次的两数之和中,最终也就得到了我们需要的字符串。如果遍历过程中发现遍历到的三个数字不完全相同,说明无法将二进制数组分成三个表示相同值的部分,返回{-1,-1};还需要注意的是,我们从个位数开始遍历,所以得到的字符串是从最小位数字开始的,还需要将字符串反转一下,才算完成。原创 2022-10-06 20:51:49 · 1051 阅读 · 10 评论 -
【Day22】力扣LeetCode算法刷题[811. 子域名访问计数]
⚽来刷题⚽ 记录每日LeetCode。原创 2022-10-06 01:13:24 · 1006 阅读 · 5 评论 -
【Day21】LeetCode算法题 [921. 使括号有效的最少添加 ] [1706. 球会落何处]
⚽来刷题⚽ 记录每日LeetCode[✔刷题专栏✔]原创 2022-10-05 00:10:17 · 1086 阅读 · 15 评论 -
【Day20】LeetCode算法题【1784. 检查二进制字符串字段】【14. 最长公共前缀】
组成的字段的数量,我们需要使用滑动窗口的思想,同时还需要获取字符串中字符’1‘的个数来充当辅助。输入:strs = [“flower”,“flow”,“flight”]字符串相同位置的字符不等,返回最长公共前缀,即前面遍历过的字符串字符。解释:由连续若干个 ‘1’ 组成的字段数量为 2,返回 false。全部由’1‘或全部由’0‘组成,都满足要求,可以直接返回true。接下来就是比较棘手的问题了,我们需要确定,字符串中。组成的字段,这里面的难点就是,连续若干个。二进制字符串中“1”的总数,用n来表示;原创 2022-10-04 00:33:16 · 890 阅读 · 32 评论 -
【Day19】LeetCode算法刷题(附带解题思路、代码注释详细) 【777. 在LR字符串中交换相邻字符】 【54. 螺旋矩阵】
为了确定start字符串是否可以通过交换相邻字符获得end字符串,我们可以同时遍历两个字符串,当遇到可以确定两者不能通过交换字符而相等的情况时,返回false即可,完全遍历完说明符合条件,返回true;为了让矩阵能按照顺时针螺旋顺序遍历,我们可以先观察,总结这样遍历的特点,而且很轻易就能发现,螺旋矩阵的遍历总是先向左、向下、再向上,最后又向左的,那么我们就可以从这个规律着手。输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]一次移动操作指用一个。原创 2022-10-02 20:40:07 · 604 阅读 · 16 评论 -
【Day18】LeetCode算法刷题[1694. 重新格式化电话号码 ] [202.快乐数]
为此,破局的关键就在于识别操作是否会进入死循环,其实这个问题并不算难,当进入了循环,曾经出现过的平方和将会重复循环地出现,当我们遇到重复的平方和时,就能判断它始终不为一,返回false。为了判断是否重复,我们就需要用到存放不可重复数据的集合Set,将平方和存入Set集合中,当新的平方和在集合中出现了,我们就可以返回false,当新的平方和等于一了,我们就可以返回true。需要分组,我们依旧需要遍历集合中的元素,和上面的思路一致,获取集合长度,遍历集合,将集合中的元素重新组成字符串,每遍历到下标与。原创 2022-10-01 23:51:54 · 896 阅读 · 5 评论 -
【Day17】Java算法刷题 【面试题 01.08. 零矩阵】 【844. 比较含退格的字符串】
算法刷题第十七天原创 2022-09-30 23:25:02 · 641 阅读 · 5 评论 -
【Day16】Java算法刷题 [299. 猜数字游戏 ] [1.两数之和] [面试题 01.09. 字符串轮转 ]
Java算法刷题第十六天[299. 猜数字游戏 ] [1.两数之和] [面试题 01.09. 字符串轮转 ]原创 2022-09-29 23:56:50 · 206 阅读 · 2 评论 -
【Day15】算法刷题(解题思路+详细注释)[面试题 17.09. 第 k 个数 ][424. 替换后的最长重复字符 ][438. 找到字符串中所有字母异位词 ]
算法刷题第十五天[面试题 17.09. 第 k 个数 ][424. 替换后的最长重复字符 ][438. 找到字符串中所有字母异位词 ]原创 2022-09-28 18:32:26 · 302 阅读 · 13 评论 -
【Day14】LeetCode力扣(解题思路+详细注释)[面试题 01.02.判定是否互为字符重排] [62. 不同路径 ] [205. 同构字符串 ]
力扣打卡第十四天原创 2022-09-27 23:43:43 · 281 阅读 · 18 评论 -
【Day13】LeetCode力扣刷题[面试题 17.19. 消失的两个数字][70.爬楼梯][746. 使用最小花费爬楼梯]
LeetCode刷题第十三天:[面试题 17.19. 消失的两个数字][70.爬楼梯][746. 使用最小花费爬楼梯]原创 2022-09-26 12:58:23 · 219 阅读 · 3 评论 -
【Day12】力扣LeetCode刷题[788.旋转数字][200.岛屿数量][509. 斐波那契数]
LeetCode力扣刷题的第十二天,可以进来看看,解题思路加代码注释都是齐全的。原创 2022-09-25 10:17:13 · 245 阅读 · 13 评论 -
【day11】LeetCode(力扣)练习【1652.拆炸弹】【235. 二叉搜索树的最近公共祖先】【733. 图像渲染】
力扣刷题第十一天今天刷【1652.拆炸弹】【235. 二叉搜索树的最近公共祖先】【733. 图像渲染】原创 2022-09-24 13:35:59 · 633 阅读 · 11 评论 -
【day10】LeetCode(力扣)刷题(注释详细)[707.设计链表][278.第一个错误的版本][98. 验证二叉搜索树]
刷题第十天(注释详细)[707.设计链表]278.第一个错误的版本][98. 验证二叉搜索树]原创 2022-09-23 15:39:04 · 554 阅读 · 14 评论 -
【day09】LeetCode(力扣)每日一刷[1640. 能否连接形成数组 ][102. 二叉树的层序遍历 ][704. 二分查找 ]
刷题打卡第九天;【day09】LeetCode(力扣)每日一刷[1640. 能否连接形成数组 ][102. 二叉树的层序遍历 ][704. 二分查找 ]原创 2022-09-22 20:00:40 · 617 阅读 · 9 评论 -
【day08】LeetCode(力扣)每日一刷[409. 最长回文串 ][144. 二叉树的前序遍历][589. N 叉树的前序遍历 ]
刷题打卡第八天[409. 最长回文串 ][144. 二叉树的前序遍历][589. N 叉树的前序遍历 ]原创 2022-09-21 19:46:44 · 436 阅读 · 3 评论 -
【第一周】七天LeetCode刷题总结
一周刷题小结原创 2022-09-20 20:38:33 · 252 阅读 · 4 评论 -
【刷题day07】LeetCode(力扣)每日一刷。[876. 链表的中间结点][142. 环形链表 II][121. 买卖股票的最佳时机]
刷题第七天[876. 链表的中间结点][142. 环形链表 II][121. 买卖股票的最佳时机]原创 2022-09-20 15:29:32 · 162 阅读 · 0 评论 -
【刷题day06】力扣(LeetCode)每日一刷[21. 合并两个有序链表][206. 反转链表 ][392. 判断子序列]
刷题打卡第六天原创 2022-09-19 23:14:12 · 232 阅读 · 0 评论 -
【day05】LeetCode(力扣)每日一刷[1464. 数组中两元素的最大乘积][347. 前 K 个高频元素][2163. 删除元素后和的最小差值 ]
刷题打卡第五天原创 2022-09-18 20:48:47 · 455 阅读 · 1 评论 -
【CSDN编程竞赛 第六期】我的第一场编程竞赛。
这是我第一次接触CSND的编程竞赛,一周前看到有这么个活动,觉得很有意思,就报名了。我是最近才开始在CSDN上发表博客,记录自己的学习,也是最近才开始刷题,所以对于此次竞赛,可以说是没有一点信心,只当是一次尝试。原创 2022-09-18 12:34:07 · 480 阅读 · 4 评论 -
【day04】力扣(LeetCode)每日一刷[1306. 跳跃游戏 III ][703. 数据流中的第 K 大元素 ][1337. 矩阵中战斗力最弱的 K 行]
刷题打卡第四天,屡败屡战...原创 2022-09-17 22:08:48 · 274 阅读 · 2 评论 -
【day03】LeetCode(力扣)每日一刷[239. 滑动窗口最大值 ][1422. 分割字符串的最大得分][1046. 最后一块石头的重量 ]
LeetCode刷题,第三天打卡,其中一道困难题,滑动窗口问题...原创 2022-09-16 17:13:17 · 390 阅读 · 3 评论 -
【day 02】LeetCode(力扣)每日一刷[1281. 整数的各位积和之差 ][215. 数组中的第K个最大元素 ][670. 最大交换]
leetcode刷题第二天...原创 2022-09-15 18:57:15 · 192 阅读 · 7 评论 -
【Day 01】力扣(LeetCode)每日一刷[506.相对名次][264.丑数][23.合并N个升序链表]
坚持刷题,今天用优先队列...原创 2022-09-14 18:07:15 · 202 阅读 · 8 评论