推荐一位实力超强的平安前端算法大佬:瓶子君

栏目: IT技术 · 发布时间: 3年前

今天给大家推荐一位平安大佬:前端瓶子君,一个专注于前端开发的小瓶子,五年大厂开发经验,掘金优秀作者。

「前端进阶算法」系列是她4月初发起的活动,从 0 到 1 构建完整的前端数据结构与算法体系。这是一个专注于前端算法的系列,针对于现在市场上大多数的算法资料都集中于后端,而前端算法资料都集中于 leetcode,没有和前端(JS框架原理、浏览器、HTTP、V8等)进行紧密的结合。

推荐一位实力超强的平安前端算法大佬:瓶子君

目前已更新了九篇算法文章(点击可查看):

四篇交流群刷题总结(点击可查看):

五十道题目(题目仅仅会在「前端进阶算法集训营」里发布,每个工作日早 9: 00),以下为部分截取:

数组篇

  • 图解leetcode88:合并两个有序数组

  • 腾讯:数组扁平化、去重、排序

  • leetcode349:给定两个数组,编写一个函数来计算它们的交集

  • 华为&leetcode146:设计和实现一个LRU(最近最少使用)缓存机制

  • 阿里算法题:编写一个函数计算多个数组的交集

链表

  • leetcode21:合并两个有序链表

  • 有赞&leetcode141:判断一个单链表是否有环

  • 图解leetcode206:反转链表

  • leetcode876:求链表的中间结点

  • leetcode19:删除链表倒数第 n 个结点

  • 图解字节&leetcode160:编写一个程序,找到两个单链表相交的起始节点

字符串

  • 字节&leetcode151:翻转字符串里的单词

  • 图解拼多多&leetcode14:最长公共前缀(LCP)

  • 百度:实现一个函数,判断输入是不是回文字符串

  • 字节&Leetcode3:无重复字符的最长子串

  • Facebook&字节&leetcode415: 字符串相加

  • 字节&leetcode155:最小栈(包含getMin函数的栈)

  • 图解腾讯&哔哩哔哩&leetcode20:有效的括号

  • leetcode1047:删除字符串中的所有相邻重复项

  • leetcode1209:删除字符串中的所有相邻重复项 II

  • 面试真题:删除字符串中出现次数 >= 2 次的相邻字符

队列

  • 剑指offer09:用两个栈实现队列

  • leetcode239:滑动窗口最大值问题

  • 字节&leetcode151:翻转字符串里的单词

  • 字节&Leetcode3:无重复字符的最长子串

哈希表

  • 腾讯&leetcode349:给定两个数组,编写一个函数来计算它们的交集

  • leetcode380:常数时间插入、删除和获取随机元素

  • 剑指Offer:第一个只出现一次的字符

二叉树

  • 字节&leetcode144:二叉树的前序遍历

  • 字节&leetcode94:二叉树的中序遍历

  • 字节&leetcode145:二叉树的后序遍历

  • 字节&leetcode107:二叉树的层次遍历

  • 字节&leetcode112:路径总和

  • 腾讯&字节等:最小的k个数

  • leetcode347:前 K 个高频元素

编程题

  • 携程&蘑菇街&bilibili:手写数组去重、扁平化函数

  • 百度:模版渲染

  • 百度:什么是浅拷贝和深拷贝?有什么区别?如何实现 Object 的深拷贝

  • 阿里&字节:手写 async/await 的实现

题目仅仅会在「前端进阶算法集训营」里发布,每个工作日早 9: 00,瓶子君都会在第二天解答呦

扫码添加瓶子君小姐姐微信 ,免费拉你进营学习前端进阶算法

推荐一位实力超强的平安前端算法大佬:瓶子君

以下是一些节选

前端进阶算法1:如何分析、统计算法的执行效率和资源消耗?

好的数据结构与算法能够大大缩短代码的执行时间与存储空间,那么我们如何去衡量它喃?本节就主要介绍算法性能的衡量指标—复杂度分析

前端进阶算法2:从Chrome  V8源码看JavaScript数组(附赠腾讯面试题)

在 JavaScript 中,可以在数组中保存不同类型值,并且数组可以动态增长,不像其它语言,例如 C,创建的时候要决定数组的大小,如果数组满了,就要重新申请内存空间,这是怎么做到的喃?

本节从 Chrome v8 源码角度回答了这个问题

前端进阶算法3:从浏览器缓存淘汰策略和Vue的keep-alive学习LRU算法(附Leetcode题解)

由浏览器缓存策略引出 LRU 算法原理,然后透过 vue 中  keep-alive 源码看  LRU 算法的实现,最后来一道leetcode,动手实现一个 LRU 缓存机制,点亮前端技能 X 点

前端进阶算法4:链表原来如此简单(+leetcode刷题)

介绍常用的链表(单链表、双链表以及循环链表),画图且代码实现常见的链表操作及复杂度问题,并总结出了一套常见的链表答题五步骤

前端进阶算法5:全方位解读前端用到的栈结构(+leetcode刷题)

代码实现栈结构及相关操作,并附上复杂度分析,作为前端不应仅仅了解栈结构,也需要了解栈在前端的应用,这里扩展介绍面试、前端进阶资深必备的知识:调用栈、栈空间与堆空间以及相关的垃圾回收,让算法不再独立与前端

前端进阶算法5:全方位解读前端用到的栈结构(+leetcode刷题)

代码实现栈结构及相关操作,并附上复杂度分析,作为前端不应仅仅了解栈结构,也需要了解栈在前端的应用,这里扩展介绍面试、前端进阶资深必备的知识:调用栈、栈空间与堆空间以及相关的垃圾回收,让算法不再独立与前端

前端进阶算法6:一看就懂的队列及配套算法题

队列这种数据结构,据瓶子君了解,前端需要了解的队列结构主要有:双端队列、滑动窗口,它们都是算法中是比较常用的数据结构

前端进阶算法7:头条正在面的哈希表问题

如何设计哈希函数以及如何解决冲突,这是哈希表考察的重要问题。

一个好的散列函数需要具有以下基本要求:易于计算、统一分布、较少的冲突

常见的解决冲突方法有几个:开放地址法(也叫开放寻址法)、链地址法、再哈希法、建立一个公共溢出区

前端进阶算法8:小白都可以看懂的树与二叉树

不同与我们之前介绍的线性结构,今天我们介绍一种非线性结构:树,树的内容比较多,包括BST树、AVL树、Trie树等

前端进阶算法9:看完这篇,再也不怕堆排序、Top K、中位数问题面试了

堆是一个完全二叉树,并且堆上的任意节点值都必须大于等于( 大顶堆 )或小于等于( 小顶堆 )其左右子节点值,推可以采用数组存储法存储,可以通过插入式建堆或原地建堆,堆的重要应用有:

  • 堆排序

  • Top K 问题:堆化,取前 K 个元素

  • 中位数问题:维护两个堆,一大(前50%)一小(后50%),奇数元素取大顶堆的堆顶,偶数取取大、小顶堆的堆顶

前端进阶算法集训营

并且她也开通了前端进阶算法集训营第一期,在营里:

  • 你可以和志同道合的前端朋友们一起进阶前端算法,从0到1构建完整的数据结构与算法体系。

  • 瓶子君不仅介绍算法,还将算法与前端各个领域进行结合,包括浏览器、HTTP、V8、JS框架原理等。所以这里不仅仅是进阶算法,更是进阶 JS。

  • 你可以每天学习一道大厂算法题(阿里、腾讯、百度、字节等等)或 leetcode,瓶子君都会在第二天解答哟!

  • 她还会每周、每月总结一次,回顾一下我们已经做了什么,以后要做什么,每天一小步,一月后收获满满

扫码关注公众号和瓶子君一起进阶前端算法,还有各种前端进阶必备好文,同时兼顾前端学习的深度与广度!

推荐一位实力超强的平安前端算法大佬:瓶子君

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算机系统概论

计算机系统概论

派特(Patt.Y.N.) / 梁阿磊、蒋兴昌、林凌 / 机械工业 / 2008-1-1 / 49.00元

《计算机系统概论(原书第2版)》是计算机科学的经典基础教材。全书以自底向上方法帮助学生理解计算机系统的原理,前半部分阐述了计算机底层结构,后半部分讲解了高级语言编程及编程方法学,主要内容包括数据类型及其运算、数字逻辑、冯·诺伊曼模型、汇编语言、输入和输出、TRAP程序和子程序、C语言编程等内容。 《计算机系统概论(原书第2版)》可用作高等院校计算机及相关专业学生的入门教材,也可作为的计算机专......一起来看看 《计算机系统概论》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器