随笔分类 -  课程 /

摘要:一、题目 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处: 0 <= j <= nums[i] i + j < n 返 阅读全文
posted @ 2023-04-03 15:03 ImreW 阅读(26) 评论(0) 推荐(0)
摘要:一、题目 数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 二、代码 class Solution { public: vector<string> generateParenthesis(int n) { dfs("", n, n); return r 阅读全文
posted @ 2023-04-02 20:19 ImreW 阅读(24) 评论(0) 推荐(0)
摘要:一、题目 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润, 阅读全文
posted @ 2023-04-01 11:23 ImreW 阅读(50) 评论(0) 推荐(0)
摘要:一、题目 给你一个字符串 s,找到 s 中最长的回文子串。 如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。 二、思路 dp[i][j] = (s[i] == s[j]) and dp[i + 1][j - 1] 三、代码 #include <iostream> #include <st 阅读全文
posted @ 2023-03-31 20:17 ImreW 阅读(31) 评论(0) 推荐(0)
摘要:一、题目 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。 二、思路 三、代码 class Solution: def longestCommonSubsequence(self, text1: str, text2: s 阅读全文
posted @ 2023-03-30 21:28 ImreW 阅读(24) 评论(0) 推荐(0)
摘要:一、题目 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 二、思路 杨辉三角,是二项式系数在三角形中的一种几何排列。它是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的结合。 三、代码 cla 阅读全文
posted @ 2023-03-29 20:03 ImreW 阅读(36) 评论(0) 推荐(0)
摘要:一、题目 给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标。 二、思路 别想那么多,就挨着跳吧 三、代码 class Solution: def canJump(self, nums: List[i 阅读全文
posted @ 2023-03-25 19:20 ImreW 阅读(15) 评论(0) 推荐(0)
摘要:一、题目 二、思路 要使lcm(a, b) - gcd(a, b)尽量大,应该让a和b的最小公倍数尽量大,a和b的最大公约数尽量小。当a、b分别取n -1 和 n时满足该条件:最小公倍数为两者乘积,最大公约数为1。 三、代码 #include<iostream> using namespace st 阅读全文
posted @ 2023-03-25 17:21 ImreW 阅读(53) 评论(0) 推荐(0)
摘要:一、题目 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你不能倾斜容器。 二、思路 初始化: 双指 阅读全文
posted @ 2023-03-22 10:21 ImreW 阅读(28) 评论(0) 推荐(0)
摘要:一、题目 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 二、思路 根据罗马数字的唯一表示法,为了表示一个给定的整数 num,我们寻找不超过 num 的最大符号值,将 num 减去该符号值,然后继续寻找不超过 num 的最大符号值,将该符号拼接在上一个找到的符号之后,循环直至 n 阅读全文
posted @ 2023-03-20 14:30 ImreW 阅读(24) 评论(0) 推荐(0)
摘要:一、题目 给你两个字符串 a 和 b ,它们长度相同。请你选择一个下标,将两个字符串都在 相同的下标 分割开。由 a 可以得到两个字符串: aprefix 和 asuffix ,满足 a = aprefix + asuffix ,同理,由 b 可以得到两个字符串 bprefix 和 bsuffix  阅读全文
posted @ 2023-03-19 21:27 ImreW 阅读(26) 评论(0) 推荐(0)
摘要:一、题目 给定一个表示 DNA序列 的字符串 s ,返回所有在 DNA 分子中出现不止一次的 长度为 10 的序列(子字符串)。你可以按 任意顺序 返回答案。 二、思路 如此一来,一个长为 10 的字符串就可以用 20 个比特表示,而一个 int 整数有 32 个比特,足够容纳该字符串,因此我们可以 阅读全文
posted @ 2023-03-17 19:05 ImreW 阅读(36) 评论(0) 推荐(0)
摘要:一、题目 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如 阅读全文
posted @ 2023-03-15 10:18 ImreW 阅读(18) 评论(0) 推荐(0)
摘要:一、题目 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。 图示两个链表在节点 c1 开始相交: 二、思路 每步操作需要同时更新指针 pA 和 pB。 如果指针 pA 不为空,则将指针 pA 移到下一个节点; 阅读全文
posted @ 2023-03-14 15:24 ImreW 阅读(44) 评论(0) 推荐(0)
摘要:一、题目 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了 阅读全文
posted @ 2023-03-13 14:21 ImreW 阅读(23) 评论(0) 推荐(0)
摘要:一、题目 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 二、思路 我们可以对方法二进一步优化,只使用一个标记变量记录第一列是否原本存在 000。这样,第一列的第一个元素即可以标记第一行是否出现 000。但为了防止每一列的第一个元素被 阅读全文
posted @ 2023-03-12 21:34 ImreW 阅读(36) 评论(0) 推荐(0)
摘要:一、题目 给你一个整数数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序。 你可以假设所有输入数组都可以得到满足题目要求的结果。 二、思路 主要思路就是你会发现,奇数索引上规律是从大到小,偶数索引上规律也是从大到小,再次发现先对奇 阅读全文
posted @ 2023-03-09 22:04 ImreW 阅读(16) 评论(0) 推荐(0)
摘要:一、题目 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 二、思路 在每一步的操作中,我们会将左指针向右移动一格,表示 我们开始枚举下一个字符作为起始位置,然后我们可以不断地向右移动右指针,但需要保证这两个指针对应的子串中没有重复的字符。在移动结束后,这个子串就对应着 以左指 阅读全文
posted @ 2023-03-07 12:04 ImreW 阅读(24) 评论(0) 推荐(0)
摘要:一、题目 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 二、思路 这样我们创建一个哈希表 阅读全文
posted @ 2023-03-06 14:21 ImreW 阅读(24) 评论(0) 推荐(0)
摘要:一、题目 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 二、思路 数组从左到右和从上到下都是升序的,如果从右上角出发开始遍历呢? 三、代码 public boolean se 阅读全文
posted @ 2023-03-05 16:40 ImreW 阅读(30) 评论(0) 推荐(0)