首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
数据结构&算法
订阅
sTone87375
更多收藏集
微信扫码分享
微信
新浪微博
QQ
22篇文章 · 0订阅
关于链表的常见算法题(一)
链表一直是面试最喜欢考的数据结构,灵活而又多变,代码往往也不是特别长。 栈:栈天然是先进后出的,在遍历链表时,把值按顺序放入栈中,最后出栈就是逆序了。 头插法:使用头插法可以得到一个逆序的链表。 如,1->2->3->4,要删除的是2,那么先把2的下一个节点值3,赋值给2的节点…
手写题:9道字符串类高频面试题
点击关注本公众号获取文档最新更新,并可以领取配套于本指南的 《前端面试手册》 以及最标准的简历模板. 请使用最基本的遍历来实现判断字符串 a 是否被包含在字符串 b 中,并返回第一次出现的位置(找不到返回 -1)。 想要实时关注笔者最新的文章和最新的文档更新请关注公众号程序员面…
前端进阶算法4:链表原来如此简单(+leetcode刷题)
链表相对于数组来说,要复杂的多,首先,链表不需要连续的内存空间,它是由一组零散的内存块透过指针连接而成,所以,每一个块中必须包含当前节点内容以及后继指针。最常见的链表类型有单链表、双链表以及循环链表。 1. 追加节点: 2. 查找: 3. 在 position 位置插入: 4.…
上次24个实用 ES6 方法受到好评,这次再来 10个
毫无疑问,JavaScript 是Web开发中最流行的编程语言之一。 无论使用的是 React,Vue 还是Angular,都只是 JavaScript。 JS围绕着广阔而至关重要的生态系统发展,提供了无数的框架和库,可帮助我们更快地开发应用程序。 但是有时候最好退一步,尝试了…
JavaScript 算法
传统的 面试过程 通常以最基本的如何编写 手机屏幕页面 问题为开始,然后通过全天的 现场工作 来检验 编码能力 和 文化契合 度。 几乎无一例外,决定性的因素还是 编码能力。 毕竟,工程师是靠一天结束之时产出可使用的软件来获得报酬的。一般来说,我们会使用 白板 来测试这种编码能…
别再暴力匹配字符串了,高效的KMP才是真的香!
字符串匹配是我们在编程中常见的问题,其中从一个字符串(主串)中检测出另一个字符串(模式串)是一个非常经典的问题,当提及到这个问题时我们首先想到的算法可能就是暴力匹配,下面的动图就展示了暴力匹配的流程。 上图中箭头指向的字符都为蓝色时代表二者匹配,都为黑色时代表二者不匹配,红色则…
17张图带你解析红黑树的原理!保证你能看懂!
由于红黑树本质上就是一棵二叉查找树,所以在了解红黑树之前,咱们先来看下二叉查找树。 任意结点的左、右子树也分别为二叉查找树。 没有键值相等的结点(no duplicate nodes)。 因为,一棵由n个结点,随机构造的二叉查找树的高度为lgn,所以顺理成章,一般操作的执行时间…
聊一聊前端算法面试——递归
现在竞争越来越激烈,今天来聊一聊前端面试中出现频率非常高的一种算法思想——「递归」。 如下图所示:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish…
JavaScript 数据结构与算法之美 - 时间和空间复杂度
1. 什么是复杂度分析 ? 数据结构和算法解决是 “如何让计算机更快时间、更省空间的解决问题”。 因此需从执行时间和占用空间两个维度来评估数据结构和算法的性能。 分别用时间复杂度和空间复杂度两个概念来描述性能问题,二者统称为复杂度。 复杂度描述的是算法执行时间(或占用空间)与数…
数据结构与算法 javascript描述-队列
所以,队列跟栈一样,也是一种操作受限的线性表数据结构。 队列这个概念非常好理解。你可以把它想象成排队买票,先来的先买,后来的人只能站末尾,不允许插队。先进者先出,这就是典型的“队列”。 队列的概念很好理解,基本操作也很容易掌握。作为一种非常基础的数据结构,队列的应用也非常广泛,…