算法-轮转数组-爱代码爱编程
文章目录 1. 轮转数组2. 解法 1. 轮转数组 给定一个数组,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。LeetCode 原题 例如: 输入: nums = [1,2,3,4,5,6
代码编织梦想
文章目录 1. 轮转数组2. 解法 1. 轮转数组 给定一个数组,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。LeetCode 原题 例如: 输入: nums = [1,2,3,4,5,6
LeetCode209长度最小的子数组 题意:给定一个含有n个整数的数组,一个正整数target,找出该数组中满足大于等于target的长度最小的连续组数组,并返回长度,若无则返回0。 eg:target=7,nums=[2,3,1,2,4,3] 返回2 连续子数组[4,3]满足最佳条件,是最短的子数组,仅有两位,[2,3,1,2]长度为4,大于
这道题耗费了蛮时间,但彻底理解后感觉也不过尔尔,涉及到了一些不太了解的知识点,算是查漏补缺吧,哦不,是补缺,没有查漏哈哈哈!小菜鸡呜呜。 那么来说一下这道题的题目大意先,题目意思就是给出一个数n,然后输出一个n²的矩阵,按顺时针在矩阵里排列。 题目: 给你一个正整数n ,生成一个包含 1到n2的平方所有元素,且元素按顺时针顺序螺旋排列的 n x
题目描述 原题链接:530. 二叉搜索树的最小绝对差 解题思路 利用BST的特性,采用中序遍历的方式,可以得到单调递增的元素。 1、递归法(中序遍历) /** * Definition for a bin
题目描述 原题链接:98. 验证二叉搜索树 解题思路 BST的特点是:当前结点的值,比左子树中的全部结点都大,比右子树中全部结点都小。在代码实现中,要注意不要对比的是某一结点和某一侧的全部值之间的关系,不能只有
首先我们简要看一下题目描述: 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素 示例 输入:nums = [3,2,2,3], val
题目描述 239. 滑动窗口最大值 一、单调队列+滑动窗口方法 本题的特点是维护一个窗口,在窗口不断向前移动时,获取其中的最大值。由于窗口在向前移动过程中,元素存在着进入和出去的连续顺序,与FIFO的特点类似。
题目描述 原题链接:1047. 删除字符串中的所有相邻重复项 解题思路 一、栈顶匹配重复元素 本题需要删除重复且相邻元素,存入不重复元素。根据相邻特点,可采用栈进行实现。 当栈顶元素和遍历的字符串中的字符相同时
LeetCode刷题记录 文章目录 LeetCode54.螺旋矩阵思路代码 LeetCode59 螺旋矩阵Ⅱ思路代码 LeetCode54.螺旋矩阵 给你一个 m 行 n 列的
LeetCode刷题记录 文章目录 📜题目描述💡解题思路⌨C++代码 📜题目描述 给你一个大小为 m x n 的矩阵 mat ,请以对角线遍历的顺序,用一个数组返回这个矩阵中的所有元素。
题目描述 原题链接:18. 四数之和 解题思路 思路与三数之和:15. 三数之和,区别之处在于: 1、多一层for循环,用于多加一个数。 四数之和就是在三数之和多加一个数,用前两个数相加,后面两个数继续作为双指
题目描述 原题链接:15. 三数之和 解题思路 本题的难点在于去重,针对两种不同的方式:双指针和Hash,采用不同的去重判定条件。 1、去重的目标 要明确,去重的是重复三元组,而不是三元组里重复的数。 2、
题目描述 原题链接:151. 反转字符串中的单词 解题思路 先预处理头部空格和中间多余空格;再将整体进行逆转。例如:the sky is blue —> eulb si yks eht;最后,分别对每个单词
题目描述 原题链接:剑指 Offer 05. 替换空格 解题思路 一、暴力解法 每出现一个空格,就出三个空位置,然后再填充字符。 class Solution { public: string repla
𝑰’𝒎 𝒉𝒉𝒈, 𝑰 𝒂𝒎 𝒂 𝒈𝒓𝒂𝒅𝒖𝒂𝒕𝒆 𝒔𝒕𝒖𝒅𝒆𝒏𝒕 𝒇𝒓𝒐𝒎 𝑵𝒂𝒏𝒋𝒊𝒏𝒈, 𝑪𝒉𝒊𝒏𝒂. 🏫 𝑺𝒉𝒄𝒐𝒐𝒍: 𝑯𝒐𝒉𝒂𝒊 𝑼𝒏𝒊𝒗𝒆𝒓𝒔𝒊𝒕𝒚🌱 𝑳𝒆𝒂𝒓𝒏𝒊𝒏𝒈: 𝑰’𝒎 𝒄𝒖𝒓𝒓𝒆𝒏𝒕𝒍𝒚 𝒍𝒆𝒂𝒓𝒏
𝑰’𝒎 𝒉𝒉𝒈, 𝑰 𝒂𝒎 𝒂 𝒈𝒓𝒂𝒅𝒖𝒂𝒕𝒆 𝒔𝒕𝒖𝒅𝒆𝒏𝒕 𝒇𝒓𝒐𝒎 𝑵𝒂𝒏𝒋𝒊𝒏𝒈, 𝑪𝒉𝒊𝒏𝒂. 🏫 𝑺𝒉𝒄𝒐𝒐𝒍: 𝑯𝒐𝒉𝒂𝒊 𝑼𝒏𝒊𝒗𝒆𝒓𝒔𝒊𝒕𝒚🌱 𝑳𝒆𝒂𝒓𝒏𝒊𝒏𝒈: 𝑰’𝒎 𝒄𝒖𝒓𝒓𝒆𝒏𝒕𝒍𝒚 𝒍𝒆𝒂𝒓𝒏
LeetCode刷题记录 文章目录 📜题目描述💡解题思路⌨C代码 📜题目描述 给定一个整数数组 nums,处理以下类型的多个查询: 计算索引 left 和 right (包含 left 和
LeetCode刷题记录 文章目录 📜题目描述💡解题思路⌨C语言代码 📜题目描述 图像平滑器 是大小为 3 x 3 的过滤器,用于对图像的每个单元格平滑处理,平滑处理后单元格的值为该单元格
题目描述 解题思路 先通过暴力解,可以得到答案输出。因A和B各自具有单调性(单调递增),因此可利用A和B的单调性,分别从A的头部和B的尾部移动,当找到Ai + Bj > x时,移动B的右端指针,往左移。当找
LeetCode刷题记录 文章目录 📜题目描述💡解题思路⌨C++代码 📜题目描述 给你一个 m x n 的矩阵 M ,初始化时所有的 0 和一个操作数组 op ,其中 ops[i] = [