深度学习与神经网络 | 邱锡鹏 | 第一章学习笔记
深度学习与神经网络 | 邱锡鹏 | 第一章学习笔记参考自下面这篇博客,笔者在此基础上写了写自己的理解,仅自己用来复习使用 【学习笔记】《深度学习与神经网络》——邱锡鹏_神经网络与深度学习 邱锡鹏-CSDN博客 一、绪论人工智能的一个子领域神经网络:一种以(人工))神经元为基本单元的模型深度学习:一类机器学习问题,主要解决贡献度分配问题 知识结构:路线图:顶会: 1.1 人工智能诞生:人工智能这个学科的诞生有着明确的标志性事件,就是1956年的达特茅斯(Dartmouth)会议。在这次会议上,“人工智能” 被提出并作为木研究领域的名称。 人工智能=计算机控制+智能行为; 人工智能就是要让机器的行为看起来就像是人所表现出的智能行为一样。 ——John McCarthy ( 1927-2011) 因为要使得计算机能通过图灵测试,计算机必须具备理解语言、学习、记忆、推理、决策等能力 =>研究领域: 机器感知(计算机视觉、语音信息处理、模式识别) 学习(机器学习、强化学习) 语言(自然语言处理) 记忆(知识表示) 决策(规划、数据挖掘) 发展时间轴: 1.2...
刷题总结 | 灵神 | 滑动窗口作业
刷题总结 | 灵神 |...
【Node】node.js安装与配置(详细步骤)
【Node】node.js安装与配置(详细步骤)声明:笔者跟着这个安装的,但是途中有的地方不太相同,就把不同的地方做了修改 【Node】node.js安装与配置(详细步骤)-阿里云开发者社区 一、安装Node.js1.1 下载Node.js官网下载 下载地址: http://nodejs.cn/download/ 选择windows安装包.msi安装 根据自身系统下载对应的安装包(我这里为Windows11 64位,故选择下载第一个安装包) 1.2 安装安装比较简单,双击安装包,勾选使用许可协议,点击Next,选择安装位置(可根据个人情况更换路径,我这里选择安装在,E:\Develop\nodejs) 碰到下面这个图的时候,最好选上这个选项,因为这个是安装依赖的,没有依赖后面可能会有莫名其妙的问题 注意这里的安装路径可以根据自身情况修改一下,不建议使用默认的安装路径 其他的页面都点next就行 1.3...
Day64 | 灵神 | 滑动窗口:最小覆盖子串
Day64 | 灵神 | 滑动窗口:最小覆盖子串76.最小覆盖子串76. 最小覆盖子串 -...
Day63 | 灵神 | 滑动窗口:将x减到0的最小操作数
Day63 | 灵神 | 滑动窗口:将x减到0的最小操作数1658.将x减到0的最小操作数1658. 将 x 减到 0 的最小操作数 -...
Day62 | 灵神 | 滑动窗口:统计得分小于K的子数组数目
Day62 | 灵神 | 滑动窗口:统计得分小于K的子数组数目2302.统计得分小于K的子数组数目2302. 统计得分小于 K 的子数组数目 - 力扣(LeetCode) 这道题目虽然是hard,但是通过前几天的做题,我个人觉得这道题反而比2962. 统计最大元素出现至少 K 次的子数组 - 力扣(LeetCode),因为这道题的统计子数组的方式比2962这道题好想很多 思路: 还是那个核心思路,固定右端点,遍历右端点,找左指针收缩的条件,这道题的收缩条件很简单,就是左右指针区间[l,r]内的数的和再乘以数量得到的数大于等于k就行。 所以思路比较简单。 另外统计子数组方式就是(r-l+1),即区间长度 举例: [2,1,4,3]如果这四个数满足条件的话,那么[1,4,3],[4,3],[3]那必然符合,那所有的子数组数量就是(r-l+1)=4咯 下面是笔者的代码,这个代码会有一个测试用例超时,咱们来看看有什么地方可以进行优化 123456789101112131415161718192021222324class Solution {public: ...
Day61 | 灵神 | 滑动窗口:统计最大元素出现至少K次的子数组
Day61 | 灵神 | 滑动窗口:统计最大元素出现至少K次的子数组2962.统计最大元素出现至少K次的子数组2962. 统计最大元素出现至少 K 次的子数组 - 力扣(LeetCode) 思路: 一开始我并没有想出来,这是笔者的代码,很遗憾超时了,因为这个和暴力的思路差不多 1234567891011121314151617181920212223class Solution {public: long long countSubarrays(vector<int>& nums, int k) { long long l=0,res=0; int max_num = ranges::max(nums),max_cnt=0; for(int i=0;i<nums.size();i++) { if(max_num==nums[i]) max_cnt++; int temp=max_cnt; ...
Day60 | 灵神 | 滑动窗口:最大连续1的个数III
Day60 | 灵神 | 滑动窗口:最大连续1的个数III1004.最大连续1的个数III1004. 最大连续1的个数 III - 力扣(LeetCode) 思路: 和前两天核心思路一样,还是固定右端点,遍历右端点,然后去找左指针往右收缩的条件。 而这个条件一般和题目条件相关。 在本题中就是要找最多翻转k个0后,数组中连续1的个数,换句话说,我们左右区间[l,r]内最多只能包含k个0,超过了就无法翻转,无法翻转就无法保证全是连续的1,。我们只需要记录碰到0的次数,只要碰到0,那么记录0的变量num_zero就++,只要碰到0的次数超过了k,那说明我们现在翻转不了这么多的0,所以我们这时候就可以移动左指针,直到我们的左右区间[l,r]内0的数量小于等于k停止。 完整代码: 1234567891011121314151617181920212223242526class Solution {public: int longestOnes(vector<int>& nums, int k) { int l=0; ...
Day59 | 灵神 | 滑动窗口:最多K个重复元素的最长子数组&&找到最长的半重复子字符串
Day59 | 灵神 | 滑动窗口:最多K个重复元素的最长子数组&&找到最长的半重复子字符串##2958.最多K个重复元素的最长子数组 2958. 最多 K 个重复元素的最长子数组 - 力扣(LeetCode) 思路: 和3. 无重复字符的最长子串 - 力扣(LeetCode)可以说是一模一样,可以查看我昨天的题解 无重复最长子串是这道题K等于2的情况而已 即左指针移动的条件是把右端点包含在好数组内时,右端点nums[i]代表的数字个数超过了k。那我们就移动左指针,直到固定右端点时整个子数组都满足数字个数小于等于k的条件。 完整代码: 12345678910111213141516171819class Solution {public: int maxSubarrayLength(vector<int>& nums, int k) { int res=0; unordered_map<int,int> p; int l=0; for(int...
Day58 | 灵神 | 滑动窗口:长度最小的子数组&&乘积小于K的子数组&&无重复字符的最长子串
Day58 | 灵神 | 滑动窗口:长度最小的子数组&&乘积小于K的子数组&&无重复字符的最长子串209.长度最小的子数组209. 长度最小的子数组 -...