自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

余光的博客

如果你现在不努力,怎么对得起你的背井离乡?

  • 博客(305)
  • 资源 (1)
  • 收藏
  • 关注

原创 数据结构专题(一)二分法,寻找解题思路看这一篇就够了

和大家一起掌握二分法,本篇文章提供了三个模版,以及大量配套练习题,帮助大家清晰的认识二分法,逐渐了解、掌握相关问题。

2020-12-29 19:02:31 8986 56

原创 JavaScript 专题(九)数组中查找指定元素

上一篇文章中,我们了解了数组扁平化的思想,并学习了 lodash 是如何处理数组扁平化的。这次我们来讨论**在数组中查找元素**时所用的一些方法,并且参考lodash来实现我们自己的工具方法

2020-11-12 18:05:23 19752 9

原创 JavaScript专题(八)数组扁平化

> 数组扁平化这一概念大家都了解,但在实际写代码的时候是否思考过应该怎么实现它?或者说实现它的时候我们能收获什么呢?> 我们尽量用多种方法达到我们的目的,主流的,非主流的都搞一搞~

2020-10-19 18:36:45 25302 6

原创 JavaScript专题(七)类型转换

类型转换常常为人诟病,但实际上很多时候它们是非常有用的,有些强制类型转换可以明确告诉我们哪里发生了类型转换,有助于提高代码可读性和可维护性。但有些却发生在我们看不见的地方,所以我们今天来讨论一下平时常见的类型转换运算和操作~

2020-09-23 18:43:46 35733 17

原创 JavaScript专题(六)类型检测

JavaScript专题之如何判断数据类型目录一、typeof二、instanceof三、constructor四、stringTag是什么?五、实现几个数据检测的方法写在最后前言在《JavaScript的数据类型》中我们也提到过简单的类型检测问题。作为前端的同学,我们应该都知道可以使用typeof和instanceof在运行时判断JavaScript数据的类型,那么他们都是怎么判断的呢?一千个人会不会写出来一千个判断方法?本文会从通用的typeof、到专攻对象的instance.

2020-08-20 19:11:57 36290 18

原创 JavaScript专题(五)深浅拷贝

了解拷贝背后的过程,避免不必要的错误1. 介绍浅拷贝2. 介绍深拷贝3. 实现浅拷贝4. 实现深拷贝Js专题系列之深浅拷贝,我们一起加油~

2020-08-12 18:53:12 40514 46

原创 JavaScript专题(四)节流

相信当部分开发同学都会遇到节流这个问题,它的答案有很多种,但是想要真的的回答好这个问题却比较难,我们来尝试实现自己可用的节流方法

2020-08-04 19:30:49 35802 44

原创 JavaScript专题(三)防抖

在前端开发中会遇到一些频繁的事件触发,比如:resize、scroll、mousedown、mousemove、keyup、keydown……今天我们在实现属于自己的防抖函数!!!

2020-07-28 18:46:21 42975 28

原创 JavaScript专题(二)数组去重,会就要会的理直气壮

相信当部分开发同学都会遇到这个问题,它的答案有很多种,但是想要真的的回答好这个问题却比较难,我们今天来看看应该怎么回答这个问题。本文篇幅较长,不妨收藏下来慢慢阅读~

2020-07-23 18:13:17 39505 59

原创 JavaScript基础内功系列,这十篇文章里一定有你感兴趣的
原力计划

前端基础内功这里总结了最经典、出镜率最高的一部分前端基础。希望能帮助自己和其他初级、中级前端同学打牢基础更进一步,加油!前言喜欢武侠或热衷武侠游戏的小伙伴门肯定了解,门派的弟子们在学习上乘武功大多需要有前置(硬性)条件的,而基础的内功就是硬性条件中的一个,也是较为重要的一个,同样的道理这一系列主要的是从另一个角度去学习JS的基础部分,因为本系列每篇文章上下呈衔接关系,所以推荐大家按循序阅读。刚参加工作的时候,一直就纠结于怎么解决某一个bug,只要“看不见”这个bug,就当时解决了问题,将它..

2020-07-17 13:37:35 35174 3

原创 JavaScript专题(一)变量提升与预编译,一起去发现Js华丽的暗箱操作

本系列的第一篇选择了一个很值得讨论的问题——变量提升,我们会从遇到问题、分析问题、解决问题、例题测试的方式加深大家对变量提升的认知,一起加油!

2020-07-16 18:53:37 36055 33

原创 余光的前端进阶笔记(持续更新)

前端summary 传送门

2019-11-20 14:11:35 34112

原创 总结自己的2020,展望2021

文章目录回顾之前的历程一、pandas是什么?二、使用步骤1.引入库2.读入数据总结回顾之前的历程提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as

2021-01-12 17:11:50 4533 14

原创 LeetCode题解:矩阵中战斗力最弱的 K 行

矩阵中战斗力最弱的 K 行一、题目给你一个大小为 m * n 的矩阵 mat,矩阵由若干军人和平民组成,分别用 1 和 0 表示。请你返回矩阵中战斗力最弱的 k 行的索引,按从最弱到最强排序。如果第 i 行的军人数量少于第 j 行,或者两行军人数量相同但 i 小于 j,那么我们认为第 i 行的战斗力比第 j 行弱。军人 总是 排在一行中的靠前位置,也就是说 1 总是出现在 0 之前。示例:输入:mat =[[1,1,0,0,0],[1,1,1,1,0],[1,0,0,0

2020-12-21 19:06:44 2405 3

原创 LeetCode题解:统计有序矩阵中的负数

统计有序矩阵中的负数一、题目给你一个 m * n 的矩阵 grid,矩阵中的元素无论是按行还是按列,都以非递增顺序排列。请你统计并返回 grid 中 负数 的数目。示例:输入:grid = [[4,3,2,-1],[3,2,1,-1],[1,1,-1,-2],[-1,-1,-2,-3]]输出:8解释:矩阵中共有 8 个负数。二、题解/** * @param {number[][]} grid * @return {number} */var countNegatives

2020-12-21 19:05:32 791

原创 LeetCode题解:寻找比目标字母大的最小字母

寻找比目标字母大的最小字母一、题目给你一个排序后的字符列表 letters ,列表中只包含小写英文字母。另给出一个目标字母 target,请你寻找在这一有序列表里比目标字母大的最小字母。在比较时,字母是依序循环出现的。举个例子:如果目标字母 target = ‘z’ 并且字符列表为 letters = [‘a’, ‘b’],则答案返回 ‘a’示例:输入:letters = ["c", "f", "j"]target = "a"输出: "c"输入:letters = ["c", "f"

2020-12-21 19:03:46 789

原创 LeetCode题解:有效的完全平方数

有效的完全平方数一、题目给定一个正整数 num,编写一个函数,如果 num 是一个完全平方数,则返回 True,否则返回 False。说明:不要使用任何内置的库函数,如 sqrt。示例 1:输入:16输出:True示例 2:输入:14输出:False题解这道题是典型的模版I分析思路在有序的“数组”中,查找指定的元素每次排除一般的查找空间/** * @param {number} num * @return {boolean} */var isPerfectSqu

2020-12-21 19:01:43 814

原创 LeetCode题解:pow(x, n)

pow(x, n)一、题目实现 pow(x, n) ,即计算 x 的 n 次幂函数。示例 1:输入: 2.00000, 10输出: 1024.00000示例 2:输入: 2.00000, -2输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25题解解题思路要判断 n 的正负,以确定我们的底是 x 还是 1/x经过分析 x^9 = x^4 * x^4 * x = (x^2 * x^2) * (x^2 * x^2) * x判断 n 的奇偶性,已确定是

2020-12-21 19:00:23 3947 5

原创 LeetCode题解:找到 K 个最接近的元素

本文是`二分查找-模版III` 的第最后一题,我会在之后将二分法的常见问题整理成完成的文档,我们一起加油~

2020-12-17 18:42:28 2839 4

原创 LeetCode题解:在排序数组中查找元素的第一个和最后一个位置

本文是二分查找-模版III 的第一题,后面的几道题的也算是本模版的微调版,加油~

2020-12-17 18:38:53 1822 3

原创 LeetCode题解:寻找旋转排序数组中的最小值

本文是二分查找-模版 II 的最后一题,接下来我们将面对更大的挑战,加油~

2020-12-16 18:49:16 2699 5

原创 LeetCode题解:寻找峰值

本文是二分查找-模版 II 的第二题,你可能意识到了,相对应的 leetcode 给他们标出中等的难度,加油!

2020-12-15 09:48:40 3912 6

原创 LeetCode题解:第一个错误的版本

本文是二分查找-模版II 的第一题,后面的几道题的也算是本模版的微调,加油~

2020-12-14 09:54:02 3249 7

原创 LeetCode题解:搜索旋转排序数组

搜索旋转排序数组(middle)更好的阅读体验应该是:审题-思考答题整理-归纳一、题目LeetCode:33.搜索旋转排序数组给你一个整数数组 nums ,和一个整数 target 。该整数数组原本是按升序排列,但输入时在预先未知的某个点上进行了旋转。(例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。请你在数组中搜索 target ,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。示例 1:输入:nums = [4,5,6,

2020-12-11 09:42:37 3134 5

原创 LeetCode题解:猜数字大小

猜数字大小(easy)更好的阅读体验应该是:审题-思考答题整理-归纳一、题目LeetCode:374.猜数字大小猜数字游戏的规则如下:每轮游戏,我都会从 1 到 n 随机选择一个数字。 请你猜选出的是哪个数字。如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了。你可以通过调用一个预先定义好的接口 guess(num) 来获取猜测结果,返回值一共有 3 种可能的情况(-1,1 或 0):-1:我选出的数字比你猜的数字小 pick < num1:我

2020-12-10 09:48:48 2614 3

原创 LeetCode题解:x的平方根

本文是二分查找-模版 I 的第三题,仅仅是修改与目标值之间的关系,我们一鼓作气拿下下一道题吧!

2020-12-09 19:13:48 2345 7

原创 LeetCode题解:704.二分查找

本篇文章,利用leetcode中最经典的二分查找,带大家了解了分析这类问题的基础模版,我们称它为模版I,看过我的二分法总结的同学应该知道,凭借这套模版以及对应的分析,类似的easy问题应该难不住你了。

2020-12-08 19:16:42 2408 9

原创 LeetCode题解:35.搜索插入位置

LeetCode题解:搜索插入位置,二分法题解的第一篇文章,之后我会陆续整理更多二分法的文章,结合leetcode,和大家一起掌握这个思想

2020-12-04 15:13:36 3328 5

原创 ES6基础:Iterator和for...of

Iterator(遍历器) 和 for…of 循环遍历器(Iterator)就是这样一种机制。它是一种接口,为各种不同的数据结构提供统一的访问机制任何数据结构只要部署 Iterator 接口,就可以完成遍历操作(即依次处理该数据结构的所有成员)一、迭代器和 for…of 浅谈1.1 传统 for 循环先来看一段标准的 for 循环的代码:var arr = [1,2,3];for (let i = 0; i < arr.length; i++) { console.log(

2020-11-18 18:04:13 12677 8

原创 ES6基础:箭头函数

ES6基础系列(三)箭头函数简要分析一个为什么会有箭头函数,它的意义是什么?

2020-11-06 18:31:13 18943 1

原创 ES6基础:变量的解构赋值

ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构。这种方式的出现大大提高了代码的扩展性,在代码中完全使用解构赋值,也会大大提高代码的可以性和扩展性

2020-08-31 19:11:40 32609 10

原创 ES6基础:let和const

变量声明是我们在学习一门语言时,最先了解的部分之一。不要忽略它,我们一起来看看ES6中新增的两种变量声明命令吧~

2020-08-26 18:29:39 4117

原创 你真的了解Js吗?用五个问题来回顾之前的内容,留下你的答案我们一起进步!(系列十)
原力计划

灵感来自Amandeep Singh大佬的文章,也是我第一次翻译英文技术文章(仅翻译了前言和题目),问题主要考察的是作用域、this指向、立即执行函数、变量提升相关知识点,我在翻译加上了自己的思考和回答,如果有错误欢迎大家指正!

2020-07-10 18:29:57 38436 37

原创 JavaScript中的基本数据类型,地基同样重要(系列九)
原力计划

Js中的数据类型虽然也是一个老生常谈的问题,但它经常出现在整个面试的前几问中,面试官会通过你的回答来决定之后问题的走向,比如当你回答基本数据类型时少回答了一个String时,那么面试官很可能就会问你String都有哪写方法哦~

2020-07-07 14:14:48 35931 26

原创 JavaScript中的参数传递(求值策略),ECMAScript中所有函数的参数都是按值传递吗(系列八)
原力计划

本篇文章主要讲的是JavaScript中最正常不过的现象——函数参数传递,本篇文章篇幅不长,但一定能引发属于你自己的思考!

2020-07-03 18:32:28 37833 11

原创 JavaScript之闭包,给自己的Js一场重生(系列七)
原力计划

JavaScript之闭包闭包——非常重要但又难以掌握的概念,理解闭包可以看作是某种意义上的重生——《你不知道的Js》代码+例题让你全程思路清晰!

2020-06-28 18:18:25 42728 32

原创 JavaScript之深入理解立即调用函数表达式(IIFE),你对它的理解,决定了它的出镜率(系列六)
原力计划

本篇文章,主要讲解的立即执行函数或自执行匿名函数的含义、用法、以及使用它的主要场景。系列的前面几篇文章主要讲解了作用域、原型、执行上下文,本篇文章一样起到了承上启下的作用。

2020-06-22 12:53:47 43110 54

原创 JavaScript中的变量对象,简约却不简单(系列五)
原力计划

本篇文章:主要介绍执行上下文的组成部分之一——变量对象(VO)和活动对象(AO)。本文是与系列的前几篇文章存在一定的承接关系,大家感兴趣的话不妨从头阅读~

2020-06-17 18:52:05 37229 32

原创 JavaScript中的执行上下文,既然遇见了这篇图文并茂的文章,干脆看完吧!(系列四)
原力计划

本文主要会讲解我们经常看到执行上下文知识点,旨在帮助自己和大家加深对它理解。主要内容包括:1、描述执行上下文;2、执行栈;3、模拟执行栈;4、思考题。思维导图+流程图+代码的方式全方位轰炸你的大脑,一起进步!!!

2020-06-15 18:14:53 38917 29

原创 从作用域到作用域链,思维脑图+代码示例让知识点一目了然!系列(三)
原力计划

作用域本篇主要总结了作用域的定义、作用域和作用域链的规则,全局变量和局部变量的关系,利用思维导图代替纯文字描述,提高收获,加油!

2020-06-09 16:38:12 38120 21

淘宝首屏静态页面(HTML+CSS)布局练习.zip

适合刚接触前端基础知识的同学,初步了解了HTML+CSS后,可以尝试练习类似项目;该项目主要为HTML+CSS实现,不涉及交互、逻辑功能,旨在提高样式布局能力

2020-05-07

空空如也

空空如也

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

TA关注的人 TA的粉丝

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