JavaScript数据结构与算法学习总结--链表

本文介绍了JavaScript中链表数据结构的基本概念和特点,包括链表元素在内存中不连续存放,最后一个节点指向null等。文章详细阐述了如何用JS描述链表,包括初始化链表、向链表尾部添加节点、移除指定位置节点和插入节点的方法。同时提到了其他常用方法如indexOf、remove、isEmpty、size和toString的实现。
摘要由CSDN通过智能技术生成

    数据结构与算法这个内容很多人一听都会觉得头大,我在最开始接触到的时候也是云里雾里。因为大一刚学编程的时候,一直连入门都如不进去,导致后来学习数据结构和算法也提不起兴趣。直到开始接触Web前端,学习了JavaScript这门脚本语言,便想学习一些基于JS的数据结构与算法知识,并且记录下来。

 一、概述   

数据结构分为线性结构与非线性结构,我觉得线性结构相对于非线性结构更好理解一些。而在线性结构中,链表属于相对较复杂的一种数据结构。

    我们先简要提一下数组。数组是最简单最基本的结构,其每一个元素在内存中连续存放。我们可以通过数组下标index任意取得自己想要的元素。

    不同于数组,链表中的元素在内存中不连续存放,这点非常重要。虽然其存放并不连续,链表中的每一个节点也有迹可循,即每个节点是和其前一个节点直接相连的。因此,我们要取得链表中的任意一个节点,必须通过从链表的第一个元素开始依此查找,直到找到我们所需要的节点。这就像是我们要爬到山顶但没有地图,我们需要从起始点开始,根据路标来找到下一个地点,最终到达目的地。

    链表的几个特点:

    1. 链表元素在内存中不连续存放

    2. 链表的最后一个节点始终指向null

    下面来说说JS中的链表创建。JS是一种基于对象的语言。在JS中,我们描述链表中的节点,需要指明一个节点对象node,这个节点包含两部分:节点的内容element和它指向下一个节点的指针next:

     


所以一个链表就是这样:

      

二、链表结构的JavaScript描述    

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值