Transformer Transformer学习笔记 1、架构 上图是\(Transformer\)的详细架构,可以从中抽象出基础模块进行理解: 以翻译任务为例,可以将\(Transform\)理解成一个黑盒,输入模型一句话,输出能够得到一个翻译结果。Transform是一个\(Seq2Seq\)模型(\(Encoder-Decoder\) 框架的模型),$Encoder和Decoder $默认是有6层 2024-03-05 NLP #八股
合并区间 合并区间 1、题目 图1 2、题解 排序 第一步将列表中的区间按左端点的大小做升序排序,然后将第一个区间加入\(ans\)数组中,并按顺序依次处理之后的区间: 当前区间的左端点在\(ans\)数组中最后一个区间的右端点之后,那们二者不会重合,直接将此区间加入\(ans\)数组的末尾; 反之二者重合,用当前区间的右端点更新\(ans\)数组中最后一个区间的右端点,值为二 2024-03-05 Hot100 #实习
最大子数组和 最大子数组和 1、题目 image-20240303230430889 2、题解 动态规划 第一步需要理解题意,找出最大连续子数组和,连续是一个关键点。题目只要求返回结果,不要求得到最大的连续子数组,可以用动态规划来解决。 第二步是如何定义子问题,根据不确定因素来清楚的定义子问题,从而让复杂的问题简单化。 首先无法知道最大的连续子数组一定会有某个数,因此可以求出所有经过输 2024-03-04 Hot100 #实习
和为k的子数组 和为k的子数组 1、题目 image-20240229220749386 2、题解 前缀和+哈希表 前缀和:一个数组的某个下标之前的所有数组元素的和(包含自身) 通常会习惯在前缀和首位放一个0,例如数组\([1,2,3]\),前缀和就为\([0,1,3,6]\),前缀和有助于快速计算某个区间内的和,例如要计算\(i,j\)之间的和:\(nums[i]+nums[i+1]+… 2024-02-29 Hot100 #实习
找到字符串中所有字母异位词 找到字符串中所有字母异位词 1、题目 image-20240227191448423 2、题解 1、滑动窗口 先在字符串s中构造一个p长度的滑动窗口,在滑动过程中固定窗口中字母的数量,当窗口中每种字母的数量与字符串p中每种字母的数量相同时,说明当前窗口为字符串p的字母异位词。 当字符串s的长度小于字符串p的长度时,字符串s中一定不存在p的异位词,此时字符串s中无法构造和字符 2024-02-27 Hot100 #实习
接雨水 接雨水 1、题目 image-20240222201820556 2、题解 1、动态规划 对于下标\(i\),下雨后能接到的雨水等于下标i两边的最大高度的最小值减去\(height[i]\)。通常的方法是分别向左向右扫描并记录每个下标左右边的最大高度,然后计算每个下标位置能接的雨水量。这种做法的时间复杂度为\(O(n^2)\)。为了避免对每个下标位置进行双边扫描,换作对每个位 2024-02-22 Hot100 #实习
三数之和 三数之和 1、题目 image-20240214233202251 2、题解 思想:排序+双指针 本题与两数之和有类似的思想,都是使用双指针来进行解题。不同的是该题要求返回的三元组中不能出现相同的三元组,因此需要对输入的list进行排序。只需要保证: 第二重循环枚举到的元素不小于当前第一重循环枚举到的元素; 第三重循环枚举到的元素不小于当前第二重循环枚举到的元素 2024-02-14 Hot100 #实习
移动零 移动零 1、题目 image-20240212223822690 2、题解 思路1:双指针+两次遍历 创建两个指针a,b,首次遍历用b记录当前的非0元素个数,遇到非0元素就将其左移,遍历完成后b的下表就指向最后一个非0元素下标。第二次遍历,起始位置从b开始到结束,将剩余区域的元素全变为0。 1234567891011class Solution(object): de 2024-02-12 Hot100 #实习
最长连续序列 最长连续序列 1、题目 image-20240211200934381 2、题解 思路:借助hash表 考虑枚举数组中每个不存在前驱数n-1的数n,在哈希表中检查是否存在,不存在即跳过。尝试匹配n+1,n+2,……是否存在,假设最长匹配至n+x,则存在长度为x+1的最长连续序列。 官方题解: 1234567891011121314151617class Solution: 2024-02-12 Hot100 #实习
字母异位词 字母异位词分组 1、题目 image-20240201205948099 2、题解 由题意可知,字母异位词的共同特点是含有相同的字母,因此可以用哈希表存储一组字母异位词。遍历字符串,得到每个字符串所包含的标志并加入该字母异位词的列表。遍历完成后哈希表的值即为一组字母异位词列表。 解法一:排序 12345678910111213141516171819202122232425 2024-02-01 Hot100 #实习