首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
Jalrion
获赞
2
粉丝
0
关注
4
看过 TA
1
男
南京农业大学
2004
前端工程师
IP属地:广东
暂未填写个人简介
私信
关注
拉黑
举报
举报
确定要拉黑Jalrion吗?
发布(5)
刷题
Jalrion
2021-10-06 14:48
已编辑
前端工程师
题解 | #设计LRU缓存结构#
普通解法 export function LRU(operators: number[][], k: number): number[] { const result: number[] = []; let cache: number[][] = []; operators.forEach((cmd) => { const [op, key] = cmd; let value: number; const index = cache.findIndex((c) => c && c[0] === key); let args...
0
点赞
评论
收藏
转发
Jalrion
2021-10-05 11:46
前端工程师
题解 | #数组中的最长连续子序列#
关键点 使用 Set 去重 向左向右查找连续的数字 优化:记录遍历过的点,下次直接跳过 export function MLS(arr: number[]): number { const s = new Set(arr); const tmp: { [key: number]: boolean } = {}; let max = 0; for (let a of arr) { if (!tmp[a]) { let left = a - 1; while (s.has(left)) { tmp[left] = true; ...
0
点赞
评论
收藏
转发
Jalrion
2021-05-29 10:52
前端工程师
题解 | #购物车#
思路 比较简单,基本上就步骤来,监听事件的时候可以监听父级节点利用点击事件冒泡一个监听就行了。 坑点 主要是 query 和 getElemnt 方法的区别: query 这类方法选择符选出来的元素及元素数组是静态的,不会随着文档操作而改变。query 使用比较方便。常用的querySelector-单选,querySelectorAll-多选 getElement 这类方法选出的元素是动态的,能查到修改后的 dom。getElement 这类方法性能比较好。常用的getElementById-单选,getElementsByClassName、getElementsByClassName、...
0
点赞
评论
收藏
转发
Jalrion
2021-05-27 23:34
前端工程师
题解 | #替换链接#
解题思路 此题最大的难点在于不支持正则表达式的负向先行断言 导致前面不匹配 / 很难实现 /(?<!\/)(www\.[\w\.\?\&\=%#]+) ?/g 最终只能在replace方法里面判断 (t, matchText, index, all) => { if (index > 0 && all[index - 1] === "/") return matchText; return ( '<a href="http://' + ...
0
点赞
评论
收藏
转发
Jalrion
2021-05-27 01:15
前端工程师
题解 | #智能提示#
思路 动态生成正则表达式 由于下面的转义之后前面会带\所以这里要连\一起捕获 const re = new RegExp( value .replace(/(\\.)/g, "$1.*?") ) 用正则表达式去过滤结果 这里题目故意挖了个坑,正则表达式的符号要转义 replace(/([\\\/\(\)\+\*\?\:\\[\]\^\$])/g, "\\$1") 完整代码如下 function listSuggests(value) { if (!value) return []; const re = new RegEx...
0
点赞
评论
收藏
转发
1
工具箱
TA的圈子
暂未加入圈子
TA的圈子
TA的笔记
暂无笔记
TA的笔记
登录
0
天
已登录
0
天
连续登录
0
人
今日访客
牛客网
牛客企业服务