自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创 「计算机组成原理」思维导图+练习

说明:该笔记是笔者学习中国大学MOOC的计算机组成原理课程时,以思维导图的形式记录的笔记,如果对你有所帮助的话,我很荣幸。若需要xind文件,可在评论处评论你的邮箱。祝大家都可以成为优秀的学习冠军!!计算机组成原理笔记第一单元 计算机系统概论第三单元 系统总线第四单元 存储器第五单元 输入输出系统第六单元 计算机的运算方法第七单元 指令系统第八单元 CPU的结构和功能第九单元控制单元的功能...

2020-06-17 09:42:25 526 2

原创 2020/10/24

程序员节快乐

2020-10-24 06:35:47 195

原创 「TodoList」后端-所有项目所需的模型文件

后端-所有项目所需的模型文件User - 用户Board - 任务面板User - 用户名称类型是否主键外键关联默认值其它idINTEGER.UNSIGNEDtrueautoIncrementnameSTRING(50)passwordSTRING(32)createdAtDATEupdatedAtDATEimport { Model, Table, PrimaryKey

2020-10-06 20:00:53 258

原创 「TodoList」后端-模型定义

后端-数据库连接1、 模型定义2、代码解析2-1、class User extends Model2-2、装饰器2-2-1、Table2-2-2、Column2-2-3、PrimaryKey2-2-4、AutoIncrement2-2-5、AllowNull(allowNull?: boolean)2-2-6、Default(value: any)2-2-7、Unique2-2-8、CreatedAt、UpdatedAt、DeletedAt2-2-9、Comment(va

2020-10-06 17:19:32 330

原创 「TodoList」后端-数据库连接

后端-数据库连接1、 sequelize-typescript1-1、安装2、 融合数据库配置3、 连接数据库4、 模型是什么?5、 ORM 的优缺点

2020-10-04 18:04:11 292

原创 「TodoList」后端-创建对应表的迁移脚本

后端-创建对应表的迁移脚本User - 用户Board - 任务面板BoardList - 任务列表BoardListCard - 任务卡片Attachment - 附件CardAttachment - 卡片附件关联Comment - 评论

2020-10-04 16:06:26 102

原创 「TodoList」后端-Sequelize-cli工具的使用

后端-Sequelize-cli工具的使用1、Sequelize 与 Sequelize-cli1-1、Sequelize1-2、ORM1-3、Sequelize-cli2、 Sequelize-cli2-1、安装2-1-1、数据库与对应的模块3、基础概念3-1、迁移3-2、种子4、 配置文件4-1、配置选项4-1-1、env4-1-2、config4-1-3、migrations-path4-1-4、seeders-path4-1-5、models-p

2020-10-04 09:14:39 285

原创 「TodoList」后端-数据库表结构

后端-数据库表结构1、表结构1-1、User - 用户1-2、Board - 任务面板1-3、BoardList - 任务列表1-4、BoardListCard - 任务卡片1-5、Attachment - 附件1-6、CardAttachment - 卡片附件关联1-7、Comment - 评论

2020-10-03 20:59:41 1036

原创 「TodoList」后端-使用postman进行接口测试

后端-使用postman进行接口测试1、 什么是 Postman2、 安装3、创建集合4、设置集合变量4-1、添加 baseUrl 变量5、添加请求GetPostParamsHeadersBody响应5-1、在请求中使用集合变量5-2、其它设置5-3、响应信息5-4、postman 内置数据生成器6、使用文件夹组织请求7、添加授权8、添加断言测试脚本Collection 操作设置集合变量获取集合变量清除集合变量断言测试响应内容是否包

2020-10-03 19:02:21 385

原创 「TodoList」后端-响应处理与数据验证

后端-响应处理与数据验证1、 响应类型2、 成功响应处理3、错误响应处理3-1、错误捕获处理4、验证请求数据4-1、params4-2、query 和 body4-2-1、定义验证类4-2-2、使用验证4-2-3、验证返回格式5、 其它业务逻辑错误6、未命中的路由1、 响应类型成功响应错误响应2、成功响应处理成功响应处理比较简单,正如前面规范提到的,根据不同情况返回对应状态码(200、201)和内容。3、 错误响

2020-10-03 13:53:29 233

原创 「TodoList」后端-请求数据获取

后端-请求数据获取1、 获取请求数据2、Params2-1、Params 装饰器3、 Query4、Body5、Header1、获取请求数据通常客户端的请求会根据业务需求同时发送一些额外数据,数据的传输携带方式也有如下几种常见场景:params也就是我们所说的动态路由可变的部分。queryStringurl 问号后的部分。body通常就是我们说的请求正文部分。headers除了一些内置头,还可以自定义一些头信息,我们应用中的用户授权

2020-10-02 20:10:41 331

原创 「TodoList」后端-koa-ts-controllers

后端-koa-ts-controllers1、 介绍1-1、安装路由2、安装与配置2-1、bootstrapControllers2-2、配置选项2-2-1、router2-2-2、basePath2-2-3、versions2-2-4、controllers3、 控制器4、装饰器4-1、Controller 装饰器4-2、HTTP请求方法装饰器4-3、代码实例1、介绍1-1、安装路由在原来的 Koa 路由配置中,我们是通过 koa-router 进行集中

2020-10-02 18:23:25 747 1

原创 「TodoList」后端-基础搭建

后端-基础搭建1、 项目基础目录结构组织1-1、初始化1-2、ts 配置1-3、创建源码目录1-4、创建项目主入口文件1-5、创建项目配置文件目录及文件1-6、类型声明文件2、 入口文件2-1、安装 Koa2-2、安装 Koa 类型声明文件2-3、编写基本代码3、 应用启动3-1、安装3-2、配置启动3-3、启动4、koa-ts-controllers1、 项目基础目录结构组织1-1、初始化创建项目目录 backend,并通过 npm init 进行初始化。

2020-10-02 08:22:23 538 1

原创 「TodoList」后端-开发前的准备工作

后端-开发前的准备工作1、技术栈1-1、开发类1-2、工具类2、接口规范2-1、资源路径2-2、其它规范2-2-1、获取2-2-2、创建2-2-3、更新2-2-4、删除2-3、错误处理2-3-1、请求错误2-3-2、授权验证错误3、 HTTP 响应图示1、技术栈1-1、开发类koa后端的主框架。koa-router基于 Koa 的路由。koa-static-cachekoa 静态文件代理。koa-ts-controllers基于 Koa 和 TypeScr

2020-10-02 08:09:35 363

原创 「蓝桥杯」汽水瓶

汽水瓶题目分析代码题目有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?输入输入文件最多包含10组测试数据,每个数据占一行,仅包含一个正整数n(1<=n<=

2020-07-30 20:16:53 135 2

原创 「蓝桥杯」数字整除

数字整除题目分析代码题目定理:把一个至少两位的正整数的个位数字去掉,再从余下的数中减去个位数的5倍。当且仅当差是17的倍数时,原数也是17的倍数 。例如,34是17的倍数,因为3-20=-17是17的倍数;201不是17的倍数,因为20-5=15不是17的倍数。输入一个正整数n,你的任务是判断它是否是17的倍数。输入输入文件最多包含10组测试数据,每个数据占一行,仅包含一个正整数n(1<=n<=10^100),表示待判断的正整数。n=0表示输入结束,你的程序不应当处理这一行。

2020-07-30 19:47:22 733

原创 「字节跳动」万万没想到之聪明的编辑

万万没想到之聪明的编辑题目内容分析什么是StringBuffer解题过程代码题目内容我叫王大锤,是一家出版社的编辑。我负责校对投稿来的英文稿件,这份工作非常烦人,因为每天都要去修正无数的拼写错误。但是,优秀的人总能在平凡的工作中发现真理。我发现一个发现拼写错误的捷径:三个同样的字母连在一起,一定是拼写错误,去掉一个的就好啦:比如 helllo -> hello两对一样的字母(AABB型)连在一起,一定是拼写错误,去掉第二对的一个字母就好啦:比如 helloo -> hello上面的

2020-07-29 16:46:39 243

原创 【Leetode】80. 删除排序数组中的重复项 II

80. 删除排序数组中的重复项 II题目解题题目题目难度:中等给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定 nums = [1,1,1,2,2,3],函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。你不需要考虑数组中超出新长度后面的元素。解题将快指针(当前遍历

2020-07-28 21:32:31 78

原创 「算法」字符串查找之 Rabin Karp 算法

Rabin Karp 算法暴力算法代码Rabin-Karp算法例题暴力算法  在讲Rabin Karp算法之前,我们在字符串查找子串中可以使用是暴力字符串匹配,但是使用暴力的话,效率就会非常慢,因为他需要比对文本和模式串的每一个字符。例如问题:在abcde中查找cde:第一步:abc与cde比较第二步:bcd与cde比较第三步:cde与cde比较  这样查找的缺点是:在每一步的比较中,他只能一个个字符串比较,要花费O(n²)。浪费很多时间。代码public class Solution

2020-07-25 16:14:44 276

原创 「力扣」1014. 最佳观光组合(第十五天)

1014. 最佳观光组合题目解题题目题目难度:中等给定正整数数组 A,A[i] 表示第 i 个观光景点的评分,并且两个景点 i 和 j 之间的距离为 j - i。一对景点(i < j)组成的观光组合的得分为(A[i] + A[j] + i - j):景点的评分之和减去它们两者之间的距离。返回一对观光景点能取得的最高分。示例输入:[8,1,5,2,6]输出:11解释:i = 0, j = 2, A[i] + A[j] + i - j = 8 + 5 + 0 - 2 = 11解题

2020-06-24 20:33:55 87

原创 「力扣」53. 最大子序和(第十四天)

53. 最大子序和题目解题一.暴力二.动态规划题目题目难度:简单给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。解题一.暴力使用双层循环,穷举所有的子区间;然后再对子区间内的所有元素求和;class Solution { public int maxSubArray(int[] nu

2020-06-23 11:13:49 99

原创 「力扣数据库」197. 上升的温度(第七天)

197. 上升的温度题目解题datediff(日期1, 日期2)题目题目难度:简单给定一个 Weather 表,编写一个 SQL 查询,来查找与之前(昨天的)日期相比温度更高的所有日期的 Id。Id(INT)RecordDate(DATE)Temperature(INT)12015-01-011022015-01-022532015-01-032042015-01-0430例如,根据上述给定的 Weather 表格,返回如下 Id:

2020-06-21 21:22:29 144

原创 「力扣」122. 买卖股票的最佳时机 II(第十三天)

终于搞懂动态规划了T-T!!!我爱动态规划!!122. 买卖股票的最佳时机 II题目解题一.贪心算法二.动态规划题目题目难度:简单给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 .

2020-06-21 21:14:25 127

原创 「力扣数据库」196. 删除重复的电子邮箱(第六天)

196. 删除重复的电子邮箱题目解题题目题目难度:简单编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个。[email protected]@[email protected]例如,在运行你的查询语句之后,上面的 Person 表应返回以下几行:[email protected]@example.com

2020-06-20 11:39:26 196

原创 「力扣」121. 买卖股票的最佳时机(第十二天)

121. 买卖股票的最佳时机题目解题一.暴力枚举二.暴力枚举的优化题目题目难度:简单给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例1输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入, 在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润不

2020-06-20 10:43:19 82

原创 「力扣」55. 跳跃游戏(第十一天)

55. 跳跃游戏题目解题1.直接跳2.贪心算法3.动态规划题目题目难度:中等给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例1输入: [2,3,1,1,4]输出: true解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。示例2输入: [3,2,1,0,4]输出: false解释: 无论怎样,你总会到达索引为 3 的位置。但该位置的最

2020-06-18 23:11:24 127

原创 「计算机组成原理」第三章思维导图+练习

第三章 思维导图练习思维导图

2020-06-13 00:13:09 1483 3

原创 「计算机组成原理」第一章思维导图+练习

第一章 计算机系统概论思维导图图片题目思维导图图片

2020-06-13 00:08:56 886 5

原创 「力扣数据库」183. 从不订购的客户(第五天)

183. 从不订购的客户题目解题题目题目难度:简单某网站包含两个表,Customers 表和 Orders 表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。IdName1Joe2Henry3Sam4MaxOrders 表:IdCustomerId1321解题两个表做左连接,然后找出不在近视表的学生则就是要添加where b.列名 is null注意是is null 不是=nullSEL

2020-06-10 22:44:24 137

原创 「力扣」220. 存在重复元素 III(第十天)

220. 存在重复元素 III题目解题暴力滑动窗口题目给定一个整数数组,判断数组中是否有两个不同的索引 i 和 j,使得 nums [i] 和 nums [j] 的差的绝对值最大为 t,并且 i 和 j 之间的差的绝对值最大为 ķ。示例1:输入: nums = [1,2,3,1], k = 3, t = 0输出: true示例2:输入: nums = [1,0,1,1], k = 1, t = 2输出: true解题对题目理解:在数组 nums[i] 中,在任意有效区间 [i,

2020-06-10 22:09:51 213

原创 「力扣」219. 存在重复元素 II (第九天)

219. 存在重复元素 II 题目解题题目给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的 绝对值 至多为 k。示例1:输入: nums = [1,2,3,1], k = 3输出: true示例2:输入: nums = [1,2,3,1,2,3], k = 2输出: false解题我一看到这道题,就用双重for循环遍历数组,找到相同的两个值,判断索引下标的绝对值是否 <=k。

2020-06-10 19:21:39 158

转载 「算法设计与分析」0-1背包问题

转载 从杰 博主的博文转载 跑码场 博主的博文【这位两位写的真的很好!建议点击连接品尝!转载只是为了方便自己学习】

2020-06-09 22:48:34 1294

原创 「力扣」217. 存在重复元素(第八天)

217. 存在重复元素题目题目难度:简单给定一个整数数组,判断是否存在重复元素。如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。

2020-06-09 10:00:41 316 1

原创 「力扣数据库」182. 查找重复的电子邮箱(第四天)

182. 查找重复的电子邮箱题目解题题目题目难度:简单编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱。[email protected]@[email protected]@b.com说明:所有电子邮箱都是小写字母。解题使用到group by进行去重,使用having + 聚合函数求出id值>1的数,即那个就是重复的邮件理解group bygroup by 与 where, having以及顺

2020-06-09 09:44:22 331

原创 「力扣数据库」181. 超过经理收入的员工(第三天)

181. 超过经理收入的员工题目解题题目题目难度:简单Employee 表包含所有员工,他们的经理也属于员工。每个员工都有一个 Id,此外还有一列对应员工的经理的 Id。IdNameSalaryManagerId1Joe7000032Henry8000043Sam60000NULL4Max90000NULL给定 Employee 表,编写一个 SQL 查询,该查询可以获取收入超过他们经理的员工的姓名。在上面的表格中,Joe 是唯

2020-06-08 23:55:31 133

原创 「力扣」274. H 指数(第七天)

274. H 指数 题目难度:中等给定一位研究者论文被引用次数的数组(被引用次数是非负整数)。编写一个方法,计算出研究者的 h 指数。h 指数的定义:h 代表“高引用次数”(high citations),一名科研人员的 h 指数是指他(她)的 (N 篇论文中)总共有 h 篇论文分别被引用了至少 h 次。(其余的 N - h 篇论文每篇被引用次数 不超过 h 次。)例如:某人的 h 指数是 20,这表示他已发表的论文中,每篇被引用了至少 20 次的论文总共有 20 篇。

2020-06-08 23:26:20 194

原创 「力扣数据库」176. 第二高的薪水(第二天)

176. 第二高的薪水题目解题步骤代码题目编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。IdSalary110022003300例如上述 Employee 表,SQL查询应该返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null。SecondHighestSalary200解题步骤首先将Salary中的数据去重,使用到 DISTINCT :SELECT DIST

2020-06-07 15:06:13 222

原创 「力扣」134. 加油站(第六天)

134. 加油站题目解题题目在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。说明:如果题目有解,该答案即为唯一答案。输入数组均为非空数组,且长度相同。输入数组中的元素均为非负数。示例1输入: gas = [1,2,3,4,5]cost =

2020-06-07 11:31:02 181

原创 「算法设计与分析」棋盘覆盖+视频讲解

棋盘覆盖题目分析视频讲解代码代码截图题目分析在一个 2k*2k 个方格组成的棋盘中,若恰有一个方格与其他方格不同,则称该方格为一个特殊方格,且称棋盘为特殊棋盘。在棋盘覆盖问题中,要用到4中不同形态的L型骨牌覆盖一个给定的特殊棋盘上除特殊方格意外的所有方格,且任何2个L型骨牌不得重叠覆盖。视频讲解 超简单!棋盘覆盖+代码实现 代码public class qipan {

2020-06-06 14:37:06 436

原创 「力扣数据库」175. 组合两个表(第一天)

175. 组合两个表题目解题题目编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息:FirstName, LastName, City, State表1: Person列名类型PersonIdintFirstNamevarcharLastNamevarcharPersonId 是上表主键表2: Address列名类型AddressIdintPersonId

2020-06-06 09:51:13 205

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除