首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
懒成铁
掘友等级
Web前端开发工程师
|
ByteDance
主机玩家、数码产品爱好者
获得徽章 0
字节跳动数据平台前端团队
动态
文章
专栏
沸点
收藏集
关注
作品
赞
13
文章 13
沸点 0
赞
13
返回
|
搜索文章
最新
热门
关于用设计模式刷 LeetCode 这件事
最近在过 《剑指Offer》 这本书上的题,尽量把每题的多种解法都自己捋一遍,在过到 面试题20. 表示数值的字符串 这一题的时候,Discuss 里有一个同学提出了 职责链模式 的解法,让人眼前一亮,另一方面是笔者最近刚用 职责链模式解决了一些问题,于是决定用 JavaScr…
【详细笔记】JavaScript数字类型详解
这是一篇偏综合性的总结,根据笔者的 routine 整理好的,并对代码进行了改进。以下内容出处均已在 参考资料 中列出,如有侵权,联系笔者删除。 计算机是二进制的,无法直接表示正负数,另外在计算机内部直接实现减法,也会影响计算机效率,所以人们希望要找到一种既能使用二进制表示10…
【重学数据结构与算法(JS)】字符串匹配算法(四)——Sunday算法
Sunday算法也许是三种里面最好理解也最好写的一种了,它的思路也是在于失配时如何跳过尽可能多的字符,具体的说,主要是优化了第3步,失配时,在主串中找到一个合适的位置,重新与模式串进行比较。 如果移动后, m > slen ,说明 S 已经遍历一遍,仍然没有找到目标,模式串 匹…
【重学数据结构与算法(JS)】字符串匹配算法(三)——BM算法
关于算法的介绍和分析,网上有很多解释,这里推荐一下阮一峰的字符串匹配的Boyer-Moore算法,很清楚的讲解了整个优化的思路,可以先看完理解了再往下看,因为下面主要介绍一下坏字符规则和好后缀规则需要的数据结构的手工求法以及代码实现。 假设字符串的字符集不是很大,用长度为256…
【重学数据结构与算法(JS)】字符串匹配算法(二)——KMP算法
优化在于其中的步骤,而KMP算法,就是优化第3步失配时寻找模式串合适位置的操作。 上面是 BF 匹配过程中从Nk到Nk+m的 m 次匹配过程,从中我们可以发现,从第 k 步到第 k+m 步时,指针 i 和 j 又回到了相同的位置,且 第 k+m 步 更具有匹配的可能性,所以我们…
【重学数据结构与算法(JS)】字符串匹配算法(一)——BF算法
一切都要从 LeetCode 的第 28 题 实现 strStr()开始说起,当自己脑子里的第一种暴力查找法写出来并 AC 之后,还是觉得不满足,决定把能找到的解法都理解了,于是便有了这个系列。 所以总的来说,之所以会有这么多种匹配算法,本质上就是一些大神对第1步和第3步进行了…
【详细笔记】前缀、中缀以及后缀表达式 (JS Version)
最近开始刷题,真实地解决了大学时期“这黑窗口敲来敲去做数学题有卵用?”的困惑。有些东西之前学过,现在忘了,但是正是因为学过,所以再学一遍就变得效率很高(但是我还是不认可大学的学科教学顺序)。废话不多说,这篇博客只是一个笔记,希望之后有了更深的认识能够完善。 波兰表示法(Poli…
手撕源码系列 —— 函子 + 观察者模式 + 状态 = Promise
前段时间太忙,隔了快一个月没写博客,但是 Promise 其实很早之前就已经总结了一波如何实现,但是那个时候纯粹是为了实现而实现,没有去细品其中的一些巧妙设计,直到最近在进行函数式编程相关的知识学习时,无意中在查阅资料的时候发现,Promise 和 Functor 居然有着千丝…
从 Prototype 开始说起(下)—— ES6 中的 class 与 extends
众所周知,JavaScript是没有类的,class也只是语法糖,这篇文章旨在于理清我们常常挂着嘴边的语法糖,究竟指的是什么。 值得注意的是 getter 和 setter tought 和 方法 talk 是被挂在 原型对象 Parent.prototype 上的。 从编译后…
从 Prototype 开始说起(上)—— 图解 ES5 继承相关
我们之所以能通过 parent.__proto__ 访问到,是因为通过原型链访问到了 Object.prototype 上的 __proto__ 存取描述符。 以下内容更像是《JavaScript高级程序设计》的笔记,主要提炼出每个继承的特点以及例图。 这样 child 就可以…
下一页
个人成就
文章被点赞
89
文章被阅读
22,414
掘力值
663
字节跳动数据平台前端团队
关注了
20
关注者
30
收藏集
1
关注标签
7
加入于
2018-07-17