![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
暑期算法冲刺
文章平均质量分 65
万物皆可der
静生万物,不忘初心
展开
-
【力扣每日一题】1572. 矩阵对角线元素的和 & 8.11打卡
使用一层for循环来求出对角线的和,同时根据阶数的奇偶性,奇数的话需要减一次中间值,偶数的话不用。:根据分析m和n的范围,可以使用暴力法两层for循环来解题 时间复杂度为O(n^2)请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。解释:对角线的和为:1 + 5 + 9 + 3 + 7 = 25。请注意,元素 mat[1][1] = 5 只会被计算一次。输入:mat = [[1,1,1,1],输入:mat = [[1,2,3],输入:mat = [[5]]返回合并后的二叉树。原创 2023-08-14 11:29:22 · 590 阅读 · 10 评论 -
【力扣每日一题】88. 合并两个有序数组 &双指针 & 辅助数组 & 8.13打卡
同时也可以使用两个指针,分别指向两个数组,然后比较移动,可以借助一个新的数组来进行协助,也可以直接在nums1数组上进行修改,时间复杂度是O(n),空间复杂度可以是O(n)或者O(1)本文使用双指针来进行作答。输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3。合并结果是 [1,2,2,3,5,6] ,其中斜体加粗标注的为 nums1 中的元素。输入:nums1 = [0], m = 0, nums2 = [1], n = 1。原创 2023-08-14 10:50:54 · 1967 阅读 · 8 评论 -
【力扣每日一题】617. 合并二叉树 & dfs & bfs & 8.14打卡
对于树的话,一般使用dfs或者bfs进行解题,只有当两个树的节点都不为空的时候,才进行和并,所有时间复杂度不会超过两颗树中节点最少得那棵树,所以为O(min(m,n))空间复杂度取决于递归调用的层数,递归调用的层数不会超过两棵树中较小的以防的二叉树的高度,最坏情况为节点数为树的深度,所以为O(min(m,n))输入:root1 = [1,3,2,5], root2 = [2,1,3,null,4,null,7]注意: 合并过程必须从两个树的根节点开始。输出:[3,4,5,5,4,null,7]原创 2023-08-14 09:43:18 · 483 阅读 · 1 评论 -
【力扣每日一题】23. 合并 K 个升序链表 &暴力法-快排 & 8.12打卡
本题我使用的是暴力解法,首先先将这个链表集合中的所有元素进行合并,生成一个长的链表,因为子链表的长度在500范围内,所以时间复杂度最终会是O(n),同时使用快速排序进行排序,最终时间复杂度在O(nlogn)针对本题:设置三个链表,一个存储小于的值,一个存储等于的值,一个存储大于的值。输入:lists = [[1,4,5],[1,3,4],[2,6]]请你将所有链表合并到一个升序链表中,返回合并后的链表。输出:[1,1,2,3,4,4,5,6]输入:lists = [[]]输入:lists = []原创 2023-08-12 12:28:59 · 415 阅读 · 4 评论 -
[算法很美打卡第四天] 字符串篇(中)
算法很美 字符串篇原创 2023-08-01 22:07:58 · 474 阅读 · 12 评论 -
【算法很美】多维数组和字符串篇打卡(第三天)
【代码】【算法很美】多维数组和字符串篇打卡(第三天)原创 2023-07-31 21:09:05 · 455 阅读 · 1 评论 -
[算法很美打卡] 多维数组篇 (打卡第二天)
【代码】[算法很美打卡] 多维数组篇 (打卡第二天)原创 2023-07-27 21:46:18 · 371 阅读 · 1 评论 -
[算法很美打卡] 多维数组篇 (打卡第一天)
[算法很美打卡] 多维数组篇 (打卡第一天)原创 2023-07-26 22:08:53 · 431 阅读 · 5 评论 -
排序算法笔记--摩尔投票算法
摩尔投票算法是一种用于在数组中查找出现次数超过一半的元素的有效算法。算法的核心思想是利用候选元素和计数器进行投票,通过消除不同元素之间的抵消来找到出现次数超过一半的元素。原创 2023-07-15 08:49:33 · 1532 阅读 · 8 评论 -
排序算法笔记-归并排序
通过找到中间值,然后递归分别从左区间和右区间找中间值,最终将所给的值划分为单个块,然后进行一步一步回溯,分块由两个单个分区排序后合成一个,以此类推,最后实现有序排序。原创 2023-07-13 10:03:18 · 579 阅读 · 7 评论 -
排序算法笔记-快速排序
快速排序:确定分界数,左边小于分界,右边大于分界数,通过递归来不断重置分界数划分区域,直至完成排序。原创 2023-07-12 22:13:24 · 634 阅读 · 4 评论